<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                書寫的時候需注意:[ ] 不要忘記寫。{ } 不要忘記寫。 # 1. 初始化 1. 直接賦值 `string str = "你好";` 2. 或用構造函數: public string {char[] value} 例如: ``` char[] arr = {'t', 'i', 'm', 'e'}; string a = new string(arr); ``` 3. 提取 > 返回值為字符串類型string public string(char[] value, int offset, int count) offset表示起始位置,count表示獲取個數。 ``` char[] arr = {'時', '間', '就', '是', '金', '錢'}; string a = new string (arr, 4, 2); // new不能省,string也不能省。 ``` 結果為“金錢”兩字。 ![](https://ws4.sinaimg.cn/large/006tKfTcly1fral3sy46xj30ic06i0te.jpg) ![](https://ws4.sinaimg.cn/large/006tKfTcly1fral4v8v1vj301x022q2s.jpg) 獲取指定位置的字符: ``` string str = "we are the world"; char chr = str[5]; //這里用的是單個字符的類型char ``` 4. 查找子字符串的索引位置 > 返回值為int 類型。獲取索引,獲取的是第幾個位置,所以結果一定是int型。 ``` public int IndexOf(string value) //獲取第一次出現的索引 public int IndexOf(stirng value, int startindex); //從指定位置往后查 public int IndexOf(string value, int startindex, int count) //從指定位置往后檢查幾個字符 ``` > 上述方法是從前往后,如果要從后往前,則使用LastIndexOf ``` string str = "we are the world"; int index = str.indexOf("e"); ``` ``` string str = "we are the world"; int index = str.IndexOf("e", 3); ``` ``` string str = "we are the world"; int index = str.IndexOf("e", 3, 5); // ``` **如果不存在該數字,則返回的位置值為-1。** # 2. 判斷字符串結尾-后綴名 > 返回值為bool值,true false。 1. 一般語法 ``` string str = "Program.cs"; bool b = str.EndsWith(".cs"); console.writeline(b); ``` 會輸出true,則表示是以這個后綴結尾,如果不是,則返回false。 2. 如果不想區分大小寫: public bool EndsWith(string value, bool ignoreCase, CultureInfo culture) endswith后面可以跟三個參數,第一個參數就是value值,第二個參數就是是否忽略大小寫(true 為忽略,false為不忽略),第三個參數一般null就行: ``` string str = "Program.cs"; bool b2 = str.EndsWith(".cs", true, null); ``` ![](https://ws4.sinaimg.cn/large/006tNc79gy1frcuw3pvr6j30gs08maaq.jpg) # 3. 判斷字符串開頭 StartWith # 4. 字符串拼接 符號:+, += ``` static void Main() { Console.WriteLine("please enter your name"); string str = Console.ReadLine(); Console.WriteLine(str + ", hello"); Console.ReadLine(); } ``` ![](https://ws2.sinaimg.cn/large/006tNc79gy1frcv1909qzj30g30823z5.jpg) 直接用+= ![](https://ws2.sinaimg.cn/large/006tNc79gy1frcv3epg6bj30cw06g3yu.jpg) # 5. 比較 1. 用== 符號 如,要比較登錄時輸入的用戶名string name 與數據庫中存在的用戶名dbname, 可直接判斷 name == dbname 是否成立。 2. compare方法——返回int值 > 需要static,因為是直接調用string 下面的compare方法 ``` string m1 = "mj"; string m2 = "mjk"; console.writeline(string.compare(m1, m2)); //此處直接寫string.compare,直接調用string字符串這個類 下面的compare 方法。 ``` 如果返回為0,則表示m1==m2,如果返回1,則表示m1>m2,返回-1則表示m1<m2。 `console.writeline(string.compare(m1, m2, true));` 則忽略大小寫。 3. compareTo方法——返回int值 > 不需要static,因為compareTo為對象比較。 `console.writeline(m1.CompareTo(m2)); //直接用對象名后面加點就可以調用方法` 4. ?Equals方法——返回bool值,一般開發中較常用 `public bool Equals (string value);` ![](https://ws4.sinaimg.cn/large/006tKfTcgy1frdlv8x0g6j30bq060gm0.jpg) `public static bool Equals (string a, string b);` ![](https://ws3.sinaimg.cn/large/006tKfTcgy1frdlwjlxzaj30bi066q3c.jpg) # 6. 大小寫——用于網頁輸入驗證碼 ``` public string TpUpper(); public string ToLower(); ``` ``` string str = "Good good study, day day Up."; string sUp = str.ToUpper(); string sLo = str.ToLower(); ``` ![](https://ws1.sinaimg.cn/large/006tKfTcgy1frdm3ypgc1j30c506qdgd.jpg) # 7. 格式化 如數值、日期、貨幣、百分比之類。用 `static string.Format` 方法。 可以使用占位符。 ![](https://box.kancloud.cn/53f3692702e5d3459367574631d5755f_613x276.png) ## 數值格式顯示 ``` console.writeline(string.Format("金額顯示: {0:c}", 368)); //注意冒號的位置,0表示占位符,占位符后面接的才是格式化的類型。 ``` 占位符{0}后面要冒號,然后再寫入要格式化的代碼,比如 c金額格式 ![](https://box.kancloud.cn/c25d918318bb7e773c115e0bdbee50f3_471x151.png) ![](https://box.kancloud.cn/9a6d18ed6b285d9d2a6f84da87aaab7e_143x80.png) c表示保留兩位小數,{0:c0}則表示整數。 ![](https://ws4.sinaimg.cn/large/006tKfTcly1frdmj87e9bj30gy080my4.jpg) ``` console.writeline(string.Format("pi的值: {0:F2}", Math.PI)); //輸出pi 的值 ``` ![](https://box.kancloud.cn/c3cf00d2740c67d78095efef582ddf81_705x205.png) ## 日期格式顯示 ![](https://ws4.sinaimg.cn/large/006tKfTcgy1frgl8hez5zj30mv0aj0ue.jpg) > 注意:記得寫string.Format() ! > 記得占位符后面是冒號: ## 用 toString 的方法 ``` DateTime day1 = DateTime.Now; console.writeline(day1.toString("Y")); ``` 也是可以的。 # 8、截取字符串 string.substring 比如截取文件名,或截取后綴 ``` string fileName = "Program.cs"; string s1 = fileName.Substring(0, fileName.indexOf("."));//0的意思是從第0號位置開始截取,一直到出現“.”的時候結束。 console.writeline(s1); ``` 如果要從"."開始,則可以這么寫: ``` string fileName = "Program.cs"; string s2 = fileName.Substring(fileName.indexOf(".")); console.writeline(s2); console.readline(); ``` ![](https://ws1.sinaimg.cn/large/006tKfTcgy1frgsnvjneij30dx04hweu.jpg) # 9、分割字符串 例如excel里面的分列。用split方法。 > 返回結果是字符數組。 ``` string str = "abc, def, ghi"; string[] a1 = str.split(new char[ ] {'.'}); //意思是,用字符'.'來進行分割。如果有其他符號,也可以繼續在 char 里面寫。 ``` ![](https://ws3.sinaimg.cn/large/006tKfTcgy1frgtnptvpaj30c500tgll.jpg) 例如: ``` console.writeline("please enter your num:"); string str = console.readline(); //讓用戶自行輸入一個帶符號“.”的數據 string [] a1 = strName.split(new char []{'.'}); //通過'.'這個字符,來對用戶輸入的數進行分割。注意這里用的是char ,所以要單引號。 foreach(string a in a1) { console.write(a + " ");//a 只是我們隨意定義的一個變量名,用來表示字符串數組內的值。用foreach方法遍歷數組,再輸出 } console.readline(); ``` 輸入192.168.0.2 得出的結果就是 192 168 0 1 中間有空格。 ![](https://ws4.sinaimg.cn/large/006tKfTcgy1frgtdt06ubj30d907i0tg.jpg) **指定分割次數:** ``` string str = "abc, def, ghi"; string a2 = str.splite(new char[ ] {"."}, 2); //會變成下圖右邊的形式。 ``` ![](https://ws1.sinaimg.cn/large/006tKfTcgy1frgsz8g946j30i009it9i.jpg) ## 此處可以制造死循環,讓用戶不斷輸入 只要在代碼的最前面加上下面for語句,即可實現。 ``` for (; ;) { } ``` [本書中關于死循環的筆記](http://www.hmoore.net/amy326/c/627058) ![](https://ws1.sinaimg.cn/large/006tKfTcgy1frgtr0jrbsj30ee0b1q40.jpg) ## 刪除空格 `string.Trim()` ``` string str = " abc "; console.writeline(str.Trim()); ``` 或刪除指定字符 ``` string str = "777777abc@@@"; char[] ch = {'7', '@'}; console.writeline(str.Trim(ch)); ``` # 10、字符串替換 Replace。替換單個字符用的是單引號。替換多個字符用的是雙引號。 ## 替換單個字符 ``` string str = "77777abc7777"; string rp = str.Replace('7', '8'); console.writeline(rp); ``` 輸出:88888abc888 ## 替換多個字符 ``` string str = "77777abc777"; string rp2 = str.Replace("ab", "de"); console.writeline(rp2); ``` # 11、可變字符串 `stringBuilder` [具體語法](https://docs.microsoft.com/zh-cn/dotnet/api/system.text.stringbuilder.-ctor?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev15.query%3FappId%3DDev15IDEF1%26l%3DZH-CN%26k%3Dk(System.Text.StringBuilder.%2523ctor)%3Bk(TargetFrameworkMoniker-.NETFramework%2CVersion%3Dv4.6.1)%3Bk(DevLang-csharp)%26rd%3Dtrue&view=netframework-4.7.2#System_Text_StringBuilder__ctor_System_String_) 注意,這個方法是在system.text命名空間里面的,所以我們在調用的時候,需要把這個命名空間加到最前面。 ![](https://ws1.sinaimg.cn/large/006tKfTcgy1frhnqbfcu4j30d902qwem.jpg) `string.Builder` 一般情況下,如果定義了一個 str 變量,再操作時,str 的值會變成最新的,無法回到最初。例如: ``` string str = "abc"; str += 'd'; // => 得到str = abcd str += 123; // => 得到 str = abcd123 ``` 但有時候我們希望對 str 進行的操作是能回到最初狀態來再一次操作。這時候需要用到可變字符串。 相關方法有:append; appendFormat; Insert; Remove; Replace等。 ![](https://box.kancloud.cn/7aab17a1d009d3be9419087af29eb325_714x207.png) ![](https://box.kancloud.cn/c986a3a89e397dba4b0e0cdd773ab029_694x233.png) 如果用了stringbuilder,就不能像上述一樣str += "def"了。而是要用相關的方法來定義。 ``` stringBuilder str = new stringBuilder ("hello"); console.writeline(str.Append(" amy")); console.readline(); ``` [參考](https://blog.csdn.net/qq541005640/article/details/77062849) ![](https://ws1.sinaimg.cn/large/006tKfTcly1frho7em2nqj30gj07faam.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看