小编Sub*_*der的帖子

Java变量设置

case1,case2和case3之间有什么区别吗?有没有与绩效相关的优势或劣势?

public class Test {

private String name;

    public void action (){

        name = doSome(); // case 1
        setName(doSome()); // case2
        this.name =doSome(); // case3

    }


    public String doSome(){
            return "Hello";
    }

    /**
     * @return the name
     */
    public String getName() {
        return name;
    }


    /**
     * @param name the name to set
     */
    public void setName(String name) {
        this.name = name;
    }
}
Run Code Online (Sandbox Code Playgroud)

java

6
推荐指数
1
解决办法
112
查看次数

Java 8功能接口分配上下文

问题是关于功能界面的分配背景 -

Predicate<String> p = String::isEmpty;
Run Code Online (Sandbox Code Playgroud)

isEmpty在String类中的方法声明为 - 的情况下工作正常public boolean isEmpty(){}.

如果我尝试在自定义类中声明相同 -

class Test{
   public boolean isEmpty(){
       ...
   }
}
Run Code Online (Sandbox Code Playgroud)

做同样的任务 -

Predicate<String> p = Test::isEmpty;
Run Code Online (Sandbox Code Playgroud)

这将是编译错误 -

Test类型没有定义适用于此的isEmpty(String)

并且Predicate<T>表示一个参数的谓词(布尔值函数)和函数方法boolean test(T t){}.

任何解释?我错过了什么吗?

java java-8

6
推荐指数
1
解决办法
4515
查看次数

在printf中作为分组分隔符的空格

我知道如何使用逗号printf作为分组分隔符以格式打印值 1,000,000.00

打印它我正在使用命令

System.out.printf ("%,.2f", value);

但如何使用空格作为分组分隔符来格式化值 1 000 000.00

我试图找到解决方案,但DecimalFormat现在使用的解决方案让我复杂化(初学者级别). 有逗号这样的简单方法吗?

java

5
推荐指数
1
解决办法
4674
查看次数

自动调整位图图像的亮度、对比度和清晰度

正如标题本身所暗示的那样......我必须首先自动调整对比度、亮度和锐度,然后如果需要,我必须提供手动调整搜索栏。

是否有任何库可用于自动调整

java android image-processing bitmapimage

5
推荐指数
1
解决办法
3113
查看次数

为什么我的xml的JAXB名称空间设置为默认ns1?

我使用NetBeans 7.2(在Windows 7环境中)从我的Web应用程序构建war文件,该文件在NetBeans上下文中使用GlassFish 3.1.2服务器的测试阶段正确运行.

package-info.java文件中定义的命名空间正确添加到我的xml文件中.

但是,当我在Linux机器上单独运行GlassFish服务器部署war文件时,命名空间被设置为默认的ns1而不是package-info.java文件定义的那个?

我究竟做错了什么?

此致,杰拉德

java glassfish jaxb

5
推荐指数
1
解决办法
3097
查看次数

关于查找链表的中间元素

我遵循以下方法来计算中间元素linked list,但我想要的是有任何内置方法或任何其他方法也可以轻松找到相同,我所遵循的方法如下所示:

import test.LinkedList.Node;
public class LinkedListTest {


    public static void main(String args[]) {
        //creating LinkedList with 5 elements including head
      LinkedList linkedList = new LinkedList();
      LinkedList.Node head = linkedList.head();
      linkedList.add( new LinkedList.Node("1"));
      linkedList.add( new LinkedList.Node("2"));
      linkedList.add( new LinkedList.Node("3"));
      linkedList.add( new LinkedList.Node("4"));

      //finding middle element of LinkedList in single pass
      LinkedList.Node current = head;
      int length = 0;
      LinkedList.Node middle = head;

      while(current.next() != null){
          length++;
          if(length%2 ==0){
              middle = middle.next();
          }
          current = current.next();
      }

      if(length%2 == …
Run Code Online (Sandbox Code Playgroud)

java

5
推荐指数
1
解决办法
2万
查看次数

如何让 ArrayList&lt;Integer&gt; 和 Scanner 发挥出色?

import java.util.*;

public class CyclicShiftApp{

   public static void main(String[] args){
      Scanner scan = new Scanner(System.in);
      ArrayList<Integer> list = new ArrayList<Integer>();
      while(scan.hasNextInt()){
         list.add(scan.nextInt());
      }
      Integer[] nums = new  Integer[list.size()];
      nums = list.toArray(nums);
      for(int i = 0;i < nums.length; i++){
      System.out.println(nums[i]);
      }   
}
Run Code Online (Sandbox Code Playgroud)

感谢poor-mans-debugging,我发现while(scan.hasNextInt())实际上并没有添加任何东西。可能出什么问题了?是我的 google-fu 弱还是缺乏专业知识让我失望?我对编程很陌生,所以不熟悉列表,所以认为这将是一个不错的第一步,但并没有增加一些东西。它也编译得很好,所以它不是语法(不再)。也许是铸造问题?

java casting arraylist java.util.scanner

5
推荐指数
1
解决办法
5万
查看次数

setParameterList 数据量大的列表

我有一个包含 8000 个项目的整数数组列表。

我使用setParameterList方法在 hql 中设置该数组列表。

只是一个示例查询

return (Integer) sessionFactory.getCurrentSession().createQuery("update data where Id in (:list)").setParameterList("list", arrayList).executeUpdate();
Run Code Online (Sandbox Code Playgroud)

但执行查询后我收到此错误。

java.lang.StackOverflowError
    at org.hibernate.hql.ast.QueryTranslatorImpl$JavaConstantConverter.visit(QueryTranslatorImpl.java:585)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:64)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:65)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:66)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:66)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:66)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:66)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:66)
    at org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTraverser.java:66)
Run Code Online (Sandbox Code Playgroud)

有什么办法可以在休眠状态下解决这个问题吗?可能这适用于纯 sql 查询。但我只是想知道HQL还有其他方法吗?

java hql

5
推荐指数
1
解决办法
3878
查看次数

我应该在java中使用finalize()吗?

为什么finalize()在Java 中根本不能保证执行?是finalize()不是应该使用方法???

考虑下面的程序.

class Test{
   protected void finalize()
   {
       System.out.println("Will i execute?");
   }
   public static void main(String args[])
   {
         Test t=new Test();
   }
}
Run Code Online (Sandbox Code Playgroud)

该程序运行时有一个空输出.我们知道finalize()在对象符合垃圾收集条件之前用于清理任何外部资源,并且finalize()将由JVM调用.在内部,finalize()我们将指定在销毁对象之前必须执行的操作.是finalize()方法邪?

java

5
推荐指数
1
解决办法
1068
查看次数

Java减去通用值运算符减未定义

我试图从提供的数组(2D数组)中减去该值。我想使用泛型来做。任何人都可以帮助解决我的代码的问题。我的意思是我需要上课吗?我遇到了错误(运算符-未为参数类型T,T定义)

提前致谢。

//this method Subtracts Value from the given Matrix for all the rows but for given columns 
private <T> void subtractValueFromColumns(T[][] matrix,
        ArrayList<Integer> columnsIndex, T value) {

    for(int i = 0; i < matrix.length; i++){
        for(int j = 0; j < columnsIndex.size(); j++){
            matrix[i][j] = matrix[i][j] - value;
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

java generics

5
推荐指数
1
解决办法
1426
查看次数