java.lang.String小测试
生活随笔
收集整理的這篇文章主要介紹了
java.lang.String小测试
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
還記得java.lang.String么,如果現(xiàn)在給你一個(gè)小程序,你能說出它的結(jié)果么
1 public static String ab(String a){ 2 return a + "b"; 3 } 4 5 public static void testAb(){ 6 String x = "a"; 7 ab(x); 8 System.out.println(x); 9 } 10 11 public static void main(String[] args) { 12 testAb(); 13 }以上執(zhí)行了main方法后會(huì)輸出什么結(jié)果呢?現(xiàn)自己想一想,再給出答案
?
?
?
結(jié)果是a。 為什么會(huì)是a呢, 因?yàn)槲覀兌贾繱tring表示字符串,是一個(gè)對象,但是卻是一個(gè)不可變的對象,也就是說字符串是一個(gè)常量,在創(chuàng)建后就是不可變的了。所以我們在上面看到的x="a",實(shí)際是不會(huì)變化的。查看java.lang.String 的源碼也可以得出結(jié)論,final的作用就不用說了吧。截取一段
1 public final class String 2 implements java.io.Serializable, Comparable<String>, CharSequence { 3 /** The value is used for character storage. */ 4 private final char value[]; 5 6 /** Cache the hash code for the string */ 7 private int hash; // Default to 0?
轉(zhuǎn)載于:https://www.cnblogs.com/blacksonny/p/4664182.html
總結(jié)
以上是生活随笔為你收集整理的java.lang.String小测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网申信用卡会打电话吗?如果打电话会问什么
- 下一篇: 面向对象中构造函数的小练习