筆記 引用型別 String型別

2021-08-09 00:18:50 字數 983 閱讀 2091

string 型別是字串包裝型別

var  str  = new string('hello world ') 這是乙個特殊的物件型別與引用型別不同的是它的生命週期,它的生命週期在**執行完瞬間就會被銷毀

sring型別的例項都有乙個length 屬性 可以str.length 訪問

1.字元方法: charat() charcodeat()

2.字串操作方法 :concat() 和+   這2個都是起到拼接字串的作用   

建立字串 slice  substring   substr  這些方法都可以接受2個引數  

ex:var str= 『hello world』 

第一種情況下 引數都是大於0 的

str.slice(3)   ==>'lo world'     (乙個引數都是下標i    starti,endi)

str.substring(3)==>'lo world' 

str.substr(3)  ==>'lo world'

str.slice(3,7) ==> 'lo w'

str.substring(3,7)==>'lo w'  (這個有點坑 在引數都》0 的情況下  會按照最小引數為起始位置)

str.substr(3,7) ==>"lo worl" (第二個引數是字串的個數)

第二種引數為負的情況

str.slice(-3) ==> 'rld'

str.substring(-3)==>'hello world' (引數為負數的時候會 會把所有的引數轉換為0)

str.substr(-3) ==>'rld'

第三種 2個引數的情況

str.slice("3,-4") ==>'lo w'

str.substring(1,-3)==>'h'

str,substr(1,-3)==>''(空字串)

string 值型別還是引用型別

大家先來看一下下面的 吧!1using system 2using system.collections.generic 34 public class myclass5,a,s 12 1314 輸出的是abc,def 我們都知道陣列是引用型別的,請看一下段 1using system 2class...

string引用型別解惑

先上 string b 123 private void form1 load objectsender,eventargs e public void test stringa string是引用型別的,應該按引用傳遞,輸出結果應該是 456,正確答案卻是 123 string繼承自object,...

string 引用 值型別

net 框架程式設計 修訂版 中有這樣一段描述 string型別直接繼承自object,這使得它成為乙個引用型別,也就是說執行緒上的堆疊上不會駐留有任何字串。譯註 注意這裡的 直接繼承 直接繼承自object的型別一定是引用型別,因為所有的值型別都繼承自system.valuetype。值得指出的是...