1. int  x=100,float  y=100.0F;  if(x==y){System.out.println("Equal");}x == y : x转化为浮点数,相当于 x=100.0F, 同一个转换虚拟机,当然得到一个大小的100.0F, 所以x等于y2. String  x=new  String("100"),String  y=new  String("100");if(x==y){System.out.println("Equal");}这个很显然,x和y引用的是两块不一样地址的对象,其实和这样的比较没有区别:String  x=new  String("101"),String  y=new  String("100");if(x==y){System.out.println("Equal");}他们俩怎么也不会相等,而x==y比的是他们俩的引用值(理解成指针值算了)3. String  x="100";String  y="100"; 
string"100"是编译成javacode时候已经定下来的一个常量,我想java的compiler肯定会优化从而把两个const string"100"合并在一块固定区域,假设为aaa,那么String x="100"=aaa, x只是aaa的一个引用,y也是一样,所以多半这时候true=(x==y)4. 想说点什么,比如这边不是java版...