上QQ阅读APP看书,第一时间看更新
6.5 常见疑难解答
6.5.1 “equals”和“==”的区别
答:如果操作两边都是对象句柄,就比较两个句柄是否指向同一个对象。如果两边是基本类型,比较的就是值。
“equals”比较的是两个对象的内容,如果不重载“equals”方法,自动调用object的“equals”方法,则和“==”样。在JDK中像“String”、“Integer”,默认重载了“equals”方法,则比较的是对象的内容。在实际编程中,建议使用“equals”方法。
6.5.2 String类为何被定义成final约束
答:主要是考虑“效率”和“安全性”的缘故。若“String”允许被继承,则其频繁地被使用,可能会降低程序的性能,所以“String”被定义成“final”。
6.5.3 char类型如何转换成int类型,int类型如何转换成字符串
char类型转换成int类型的代码如下所示。
char c = 'A'; int i = c; //反过来只要作强制类型转换就行了 c =(char)I;
将整数int转换成字串String有两种方法:
(1) String s=String.valueOf(i);
(2) String s=Integer.toString(i);