小编yag*_*nya的帖子

为什么某些Integer对象的== true?

可能重复:
整数包装器对象仅在值127内共享相同的实例?

我从Khalid Mughal SCJP复制了以下程序片段,但我无法
理解输出.

 public class RQ200_60 {
    public static void main(String[] args) {
        Integer i = -10;
        Integer j = -10;
        System.out.print(i==j);         // output: true -- why true?
        System.out.print(i.equals(j));  // output: true
        Integer n = 128;
        Integer m = 128;
        System.out.print(n==m);         // output: false
        System.out.print(n.equals(m));  // output: true
    }
}      
Run Code Online (Sandbox Code Playgroud)

上面的程序为第一个print语句提供了true,但它应该给出false,因为它是与==关系运算符的引用比较.但第三次打印给出了错误,我不明白这种不一致.

非常感谢您的解释!

java integer

19
推荐指数
3
解决办法
1199
查看次数

关于断言启用

谁可以告诉我如何在日食Helios中启用断言?我正在使用java 6

java eclipse assert

4
推荐指数
1
解决办法
846
查看次数

当覆盖等于方法时违反反身性规则

我对Efective Java这本书有所怀疑.怀疑是关于equals方法
反身规则违反.这本书说如下:

" 如果你违反了它,然后将你的类的一个实例添加到一个集合中,那么集合的contains方法肯定会说该集合不包含你刚刚添加的实例. "

为了测试它,我写了一个示例类,但contains方法没有返回false它返回true.谁能说出问题是什么?

java collections

4
推荐指数
2
解决办法
1720
查看次数

html到java中的xhtml转换

如何通过使用Http类api将html转换为格式良好的xhtml,如果可能的话请给出演示代码....谢谢

java

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

关于java的实习生

我的问题是,如果实习生正在使用字符串和字符串有一个SPC(字符串池常量)为它和实习生概念也使用整数,所以是否有任何整数池常量?如果不是那么它的工作原理?

class InternExample  
{  
 public void print()  
{    
 Integer i=10;  
 Integer j=10;  
 String c="a";  
  String s="a";  
 System.out.println(i==j);// prints true  
 System.out.println(c==s);//prints true  
}  
 public static void main(String args[])  
{  
  new InternExample().print();  
}  
}
Run Code Online (Sandbox Code Playgroud)

java string-interning

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

关于java上静态导入的问题

import static java.lang.System.out;  
import java.io.FileNotFoundException;
import java.io.PrintWriter;

public class ShadowingByImporting
{
    public static void main(String[] args)throws FileNotFoundException
    {
       out.println("Calling println() in java.lang.System.out");
       PrintWriter pw=new PrintWriter("log.txt");
       writeInfo(pw);
       pw.flush();
       pw.close();
     }

    public static void writeInfo(PrintWriter out)    
    {
      out.println("Calling pritnln() in the parameter out");
      System.out.println("Calling println() in java.lang.System.out Example");
    }  
}
Run Code Online (Sandbox Code Playgroud)

上面的程序是在Khalid Mugal的SCJP指南中给出的,根据他的静态导入中的阴影原理写入writeInfo中的第二个println方法.方法将执行两次,但是当我运行以下不同的输出时.

请有人解释一下实际的概念是什么.

Calling println() in java.lang.System.out

Calling println() in java.lang.System.out Example
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
357
查看次数

标签 统计

java ×6

assert ×1

collections ×1

eclipse ×1

integer ×1

string-interning ×1