C# Rentetan
Dalam C#, anda boleh menggunakan tatasusunan aksara untuk mewakili rentetan, walau bagaimanapun, adalah lebih biasa untuk menggunakan kata kunci rentetan untuk mengisytiharkan pembolehubah rentetan. Kata kunci rentetan ialah alias untuk kelas System.String.
Mencipta Objek Rentetan
Anda boleh mencipta objek rentetan menggunakan salah satu kaedah berikut:
Dengan memberikan rentetan kepada Pembolehubah rentetan
Dengan menggunakan pembina kelas Rentetan
Dengan menggunakan operator penggabungan rentetan ( + )
-
Tukar nilai atau objek kepada perwakilan rentetannya dengan mendapatkan semula sifat atau memanggil kaedah yang mengembalikan rentetan
Tukar nilai atau objek kepada perwakilan rentetan melalui kaedah pemformatan
Contoh berikut menunjukkan ini:
using System; namespace StringApplication { class Program { static void Main(string[] args) { //字符串,字符串连接 string fname, lname; fname = "Rowan"; lname = "Atkinson"; string fullname = fname + lname; Console.WriteLine("Full Name: {0}", fullname); //通过使用 string 构造函数 char[] letters = { 'H', 'e', 'l', 'l','o' }; string greetings = new string(letters); Console.WriteLine("Greetings: {0}", greetings); //方法返回字符串 string[] sarray = { "Hello", "From", "Tutorials", "Point" }; string message = String.Join(" ", sarray); Console.WriteLine("Message: {0}", message); //用于转化值的格式化方法 DateTime waiting = new DateTime(2012, 10, 10, 17, 58, 1); string chat = String.Format("Message sent at {0:t} on {0:D}", waiting); Console.WriteLine("Message: {0}", chat); Console.ReadKey() ; } } }
Apabila kod di atas disusun dan dilaksanakan, ia menghasilkan keputusan berikut:
Full Name: RowanAtkinson Greetings: Hello Message: Hello From Tutorials Point Message: Message sent at 17:58 on Wednesday, 10 October 2012
Atribut Rentetan class
Kelas rentetan mempunyai dua atribut berikut:
Nombor siri | Nama & perihalan atribut | ||||||
---|---|---|---|---|---|---|---|
1 |
| ||||||
2 | <🎜>Panjang<🎜><🎜>Dapatkan bilangan aksara dalam objek String semasa. |
Kaedah kelas String
Kelas rentetan mempunyai banyak kaedah untuk beroperasi pada objek rentetan. Jadual di bawah menyediakan beberapa kaedah yang paling biasa:
Nombor siri | Nama kaedah & perihalan |
---|---|
1 | Int statik awam Bandingkan (
rentetan stra,
rentetan strB
) Membandingkan dua objek rentetan yang ditentukan dan mengembalikan integer yang mewakili kedudukan relatifnya dalam susunan isihan. Kaedah ini sensitif huruf besar-besaran. |
2 | int statik awam Bandingkan(
rentetan stra,
rentetan strB,
bool ignoreCase
) Membandingkan dua objek rentetan yang ditentukan dan mengembalikan integer yang mewakili kedudukan relatifnya dalam susunan isihan. Walau bagaimanapun, jika hujah boolean adalah benar, kaedah tersebut tidak sensitif huruf besar. |
3 | rentetan statik awam Concat(
rentetan str0,
rentetan str1
) Menggabungkan dua objek rentetan. |
4 | rentetan statik awam Concat(
rentetan str0,
rentetan str1,
rentetan str2
) Menggabungkan tiga objek rentetan. |
5 | rentetan statik awam Concat(
rentetan str0,
rentetan str1,
rentetan str2,
rentetan str3
) Sambungkan empat objek rentetan. |
6 | public bool Mengandungi(
nilai rentetan
) Mengembalikan nilai yang menunjukkan sama ada objek rentetan yang ditentukan muncul dalam rentetan. |
7 | rentetan statik awam Salin(
rentetan str
) Mencipta objek String baharu dengan nilai yang sama seperti rentetan yang ditentukan. |
8 | public void CopyTo(
int sumberIndex,
char[] destinasi,
int destinasiIndex,
kiraan int
) Menyalin bilangan aksara yang ditentukan bermula pada kedudukan objek rentetan yang ditentukan ke kedudukan yang ditentukan dalam tatasusunan aksara Unicode. |
9 | public bool EndsWith(
nilai rentetan
) Menentukan sama ada hujung objek rentetan sepadan dengan rentetan yang ditentukan. |
10 | public bool Equals(
nilai rentetan
) Tentukan sama ada objek rentetan semasa mempunyai nilai yang sama dengan objek rentetan yang ditentukan. |
11 | pub statik bool Sama dengan(
rentetan a,
rentetan b
) Menentukan sama ada dua objek rentetan yang ditentukan mempunyai nilai yang sama. |
12 | Format rentetan statik awam(
format rentetan,
Objek arg0
) Menggantikan satu atau lebih item format dalam rentetan yang ditentukan dengan perwakilan rentetan objek yang ditentukan. |
13 | public int IndexOf(
nilai char
) Mengembalikan indeks kejadian pertama aksara Unikod yang ditentukan dalam rentetan semasa, bermula dari 0. |
14 | public int IndexOf(
nilai rentetan
) Mengembalikan indeks kejadian pertama rentetan yang ditentukan dalam kejadian ini, bermula dari 0. |
15 | public int IndexOf(
nilai char,
int startIndex
) Mengembalikan indeks kejadian pertama aksara Unikod yang ditentukan, bermula pada kedudukan aksara yang ditentukan dalam rentetan ini, bermula pada 0. |
16 | public int IndexOf(
nilai rentetan,
int startIndex
) Mengembalikan indeks kejadian pertama rentetan yang ditentukan bermula dari kedudukan aksara yang ditentukan dalam kejadian ini. Indeks bermula dari 0. |
17 | public int IndexOfAny(
char[] anyOf
) Mengembalikan indeks kejadian pertama bagi mana-mana aksara dalam tatasusunan aksara Unikod yang ditentukan dalam kejadian ini Indeks bermula dari 0. |
18 | public int IndexOfAny(
char[] anyOf,
int startIndex
) Mengembalikan indeks kejadian pertama mana-mana aksara dalam tatasusunan aksara Unicode yang ditentukan bermula dari kedudukan aksara yang ditentukan dalam contoh, dan indeks bermula dari 0. |
19 | rentetan awam Sisipkan(
int startIndex,
nilai rentetan
) Mengembalikan rentetan baharu di mana rentetan yang ditentukan disisipkan pada indeks yang ditentukan bagi objek rentetan semasa. |
20 | bool statik awam IsNullOrEmpty(
nilai rentetan
) Menunjukkan sama ada rentetan yang ditentukan adalah batal atau rentetan kosong. |
21 | rentetan statik awam Sertai(
pemisah rentetan,
nilai rentetan params [].
) Menggabungkan semua elemen dalam tatasusunan rentetan, menggunakan pembatas yang ditentukan untuk memisahkan setiap elemen. |
22 | rentetan statik awam Sertai(
pemisah rentetan,
nilai rentetan [],
int startIndex,
kiraan int
) menggabungkan elemen yang ditentukan bermula pada kedudukan yang ditentukan dalam tatasusunan rentetan, menggunakan pembatas yang ditentukan untuk memisahkan setiap elemen. |
23 | public int LastIndexOf(
nilai char
) Mengembalikan kedudukan indeks kejadian terakhir bagi aksara Unikod yang ditentukan dalam objek rentetan semasa Indeks bermula dari 0. |
24 | public int LastIndexOf(
nilai rentetan
) Mengembalikan kedudukan indeks kejadian terakhir rentetan yang ditentukan dalam objek rentetan semasa Indeks bermula dari 0. |
25 | rentetan awam Alih keluar(
int startIndex
) Mengalih keluar semua aksara dalam contoh semasa, bermula pada kedudukan yang ditentukan dan berakhir pada kedudukan terakhir dan mengembalikan rentetan. |
26 | rentetan awam Alih keluar(
int startIndex,
kiraan int
) Mengalih keluar bilangan aksara yang ditentukan bermula dari kedudukan rentetan semasa yang ditentukan dan mengembalikan rentetan itu. |
27 | rentetan awam Ganti(
char oldChar,
char newChar
) Menggantikan semua aksara Unicode yang ditentukan dalam objek rentetan semasa dengan aksara Unicode lain yang ditentukan dan mengembalikan rentetan baharu. |
28 | rentetan awam Ganti(
rentetan oldValue,
rentetan newValue
) Menggantikan semua rentetan yang ditentukan dalam objek rentetan semasa dengan rentetan lain yang ditentukan dan mengembalikan rentetan baharu. |
29 | rentetan awam[] Split(
params char[] pemisah
) Mengembalikan tatasusunan rentetan yang mengandungi subrentetan dalam objek rentetan semasa, dipisahkan oleh elemen dalam tatasusunan aksara Unicode yang ditentukan. |
30 | rentetan awam[] Split(
pemisah char[],
kiraan int
) Mengembalikan tatasusunan rentetan yang mengandungi subrentetan dalam objek rentetan semasa, dipisahkan oleh elemen dalam tatasusunan aksara Unicode yang ditentukan. Parameter int menentukan bilangan maksimum subrentetan untuk dikembalikan. |
31 | public bool StartsWith(
nilai rentetan
) Menentukan sama ada permulaan tika rentetan sepadan dengan rentetan yang ditentukan. |
32 | public char[] ToCharArray() Mengembalikan tatasusunan aksara Unicode dengan semua aksara dalam objek rentetan semasa. |
33 | acara awam[] ToCharArray(
int startIndex,
panjang int
) Mengembalikan tatasusunan aksara Unikod dengan semua aksara dalam objek rentetan semasa, bermula pada indeks yang ditentukan dan berakhir pada panjang yang ditentukan. |
34 | rentetan awam ToLower() Tukar rentetan kepada huruf kecil dan kembalikan. |
35 | rentetan awam ToUpper() Tukar rentetan itu kepada huruf besar dan kembalikan. |
36 | rentetan awam Trim() Mengalih keluar semua aksara ruang kosong di hadapan dan di belakang daripada objek Rentetan semasa. |
Senarai kaedah di atas tidak lengkap, sila lawati perpustakaan MSDN untuk melihat senarai kaedah lengkap dan pembina kelas String.
Contoh
Contoh berikut menunjukkan beberapa kaedah yang dinyatakan di atas:
Bandingkan rentetan
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string str1 = "This is test"; string str2 = "This is text"; if (String.Compare(str1, str2) == 0) { Console.WriteLine(str1 + " and " + str2 + " are equal."); } else { Console.WriteLine(str1 + " and " + str2 + " are not equal."); } Console.ReadKey() ; } } }
Apabila di atas Apabila kod disusun dan dilaksanakan, ia menghasilkan keputusan berikut:
This is test and This is text are not equal.
Rentetan mengandungi rentetan:
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string str = "This is test"; if (str.Contains("test")) { Console.WriteLine("The sequence 'test' was found."); } Console.ReadKey() ; } } }
Apabila kod di atas disusun dan dilaksanakan, ia Akan menghasilkan keputusan berikut:
The sequence 'test' was found.
Dapatkan subrentetan:
Apabila kod di atas disusun dan dilaksanakan , ia menghasilkan keputusan berikut:
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string str = "Last night I dreamt of San Pedro"; Console.WriteLine(str); string substr = str.Substring(23); Console.WriteLine(substr); Console.ReadKey() ; } } }
Rentetan sambungan:
Last night I dreamt of San Pedro San Pedro
Apabila kod di atas disusun dan dilaksanakan, ia menghasilkan keputusan berikut:
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string[] starray = new string[]{"Down the way nights are dark", "And the sun shines daily on the mountain top", "I took a trip on a sailing ship", "And when I reached Jamaica", "I made a stop"}; string str = String.Join("\n", starray); Console.WriteLine(str); Console.ReadKey() ; } } }