C#面向对象9 字符串
?
?
1.字符串的不可變性
當(dāng)你給一個字符串重新賦值之后,老的值并沒有銷毀,而是重新開辟了一塊空間(堆)存儲新的值。
**當(dāng)程序結(jié)束后,GC掃描整個內(nèi)存,如果發(fā)現(xiàn)有的空間沒有被指向,則立即把它銷毀。
?
示意圖:值類型和引用類型在內(nèi)存中的存儲
?
示意圖:s1和s2 在棧中存儲著相同的地址,這個地址指向堆中的"張三";s1重新賦值“123”,會在堆中開辟一塊新的空間存儲“123”,然后棧中的s1存儲的地址改變!
示意圖:驗證s1="123",s2="123"在棧中存放的內(nèi)存都是堆中同一個地址
?
2.可以將字符串看做是char類型的一個只讀數(shù)組。
ToCharArray();
new string (char[] chs);
?
3.StringBuilder
?
4.字符串的各種方法
1) Length
2) ToUpper
3) ToLower
4) equals : s1.equals(s2,StringComparison.OrdinalIgnoreCase) --忽視大小寫的比較
5) split :
6) Contains
7) Replace
?
?8) Substring??
9) StartsWith
10) EndsWith
11) IndexOf/LastIndexOf
12) Trim
13) TrimStart
14) TrimEnd
15) IsNullOrEmpty
16) string.Join
?
轉(zhuǎn)載于:https://www.cnblogs.com/youguess/p/8446630.html
總結(jié)
以上是生活随笔為你收集整理的C#面向对象9 字符串的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基础005_V7-Select IO
- 下一篇: tomcat异常处理经验汇总