第 1-3 课:深入理解字符串 + 面试题
生活随笔
收集整理的這篇文章主要介紹了
第 1-3 课:深入理解字符串 + 面试题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
字符串介紹
字符串是程序開發當中,使用最頻繁的類型之一,有著與基礎類型相同的地位,甚至在 JVM(Java 虛擬機)編譯的時候會對字符串做特殊的處理,比如拼加操作可能會被 JVM 直接合成為一個最終的字符串,從而到達高效運行的目的。
1 String 特性
- String 是標準的不可變類(immutable),對它的任何改動,其實就是創建了一個新對象,再把引用指向該對象;
- String 對象賦值之后就會在常量池中緩存,如果下次創建會判定常量池是否已經有緩存對象,如果有的話直接返回該引用給創建者。
2 字符串創建
字符串創建的兩種方式:
- String str = "laowang";
- String str = new String("laowang");
3 注意事項
查看下面代碼:
String s1 = "laowang"; String s2 = s1; String s3 = new String(s1); System.out.println(s1 == s2); System.out.println(s1 == s3);輸出結果:true、false。
為什么會這樣?原因是 s3 使用 new String 時一定會在堆中重新創建一個內存區域,而 s2 則會直接使用了 s1 的引用,所以得到的結果也完全不同。
字符串的使用
1 字符串拼加
字符串拼加的幾種方式
總結
以上是生活随笔為你收集整理的第 1-3 课:深入理解字符串 + 面试题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何保证 Redis 消息队列中的数据
- 下一篇: 阿里面试官给你的一些忠告,这样做肯定错不