`
louis1987
  • 浏览: 9713 次
  • 性别: Icon_minigender_1
  • 来自: 福州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

学习thinking in java(1)

阅读更多
1. 强类型定义语言    
   如果你有一个整数,如果不显示进行转换,你不能将其视为一个字符串
   
   弱类型定义语言    
   与强类型定义相反,可以将字符'12'和整数3进行连接得到字符串'123',可以看成整数123,而不需要显示转换。
2.变量的命名:用下划线隔开user_name
  函数方法名:第2个单词开始用大写getUserName

3.主类型的赋值
int a = 4;
int b = 7;
a = b;//该赋值不会使主类型指向一个对象句柄,只是值的复制
System.out.println(a);
System.out.println(b);
a = 1;
System.out.println(a);
System.out.println(b);
结果:
7
7
1
7
  对象的赋值
public class sss {
int i = 47;
}

sss s1 = new sss();
sss s2 = new sss();
s1.i = 9;
s2.i = 47;
System.out.println("s1="+s1.i);
System.out.println("s2="+s2.i);
s1 = s2;//会指向对象的同一个句柄,这里s2的句柄
(若是s1.i = s2.i则只会改变值)
System.out.println("s1="+s1.i);
System.out.println("s2="+s2.i);
s1.i = 27;
System.out.println("s1="+s1.i);
System.out.println("s2="+s2.i);
结果:
s1=9
s2=47
s1=47
s2=47
s1=27
s2=27(s2=47)
4.equals() 与 ==
public class sss {
int i;
}
Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
System.out.println(n1==n2);//比较的是句柄,句柄不同false
System.out.println(n1.equals(n2));//比较值,值相同true
sss s1 = new sss();
sss s2 = new sss();
s1.i = s2.i = 100;
System.out.println(s1.i);
System.out.println(s2.i);
System.out.println(s1==s2);//比较的是句柄,句柄不同false
System.out.println(s1.equals(s2));//比较的是句柄,句柄不同false
System.out.println(s1.i == s2.i);//比较值true 对象属性值比较也是不比较句柄
结果:
false
true
100
100
false
false
true
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics