Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Veri String türü bir dizi karakteri temsil eder. Her karakter, veri türünün bir örneğini Char temsil eder. Bu konu, Visual Basic'teki dizelerin temel kavramlarını tanıtır.
Dize Değişkenleri
Bir dizenin örneğine, bir karakter dizisini temsil eden bir değişmez değer atanabilir. Örneğin:
Dim MyString As String
MyString = "This is an example of the String data type"
Bir String değişken, bir dizeyi değerlendiren tüm ifadeleri de kabul edebilir. Örnekler aşağıda gösterilmiştir:
Dim OneString As String
Dim TwoString As String
OneString = "one, two, three, four, five"
' Evaluates to "two".
TwoString = OneString.Substring(5, 3)
OneString = "1"
' Evaluates to "11".
TwoString = OneString & "1"
Bir String değişkene atanan tüm sabitler tırnak işareti ("") içine alınmalıdır. Bu, bir dize içindeki tırnak işaretinin tırnak işaretiyle temsil edilemeyeceği anlamına gelir. Örneğin, aşağıdaki kod derleyici hatasına neden olur:
Dim myString As String
' This line would cause an error.
' myString = "He said, "Look at this example!""
Derleyici ikinci tırnak işaretinden sonra dizeyi sonlandırdığından ve dizenin geri kalanı kod olarak yorumlandığından bu kod bir hataya neden olur. Bu sorunu çözmek için Visual Basic, dize değişmez değerindeki iki tırnak işaretini dizede bir tırnak işareti olarak yorumlar. Aşağıdaki örnek, bir dizeye tırnak işareti eklemenin doğru yolunu gösterir:
' The value of myString is: He said, "Look at this example!"
myString = "He said, ""Look at this example!"""
Yukarıdaki örnekte, sözcüğün Look önündeki iki tırnak işareti dizede bir tırnak işaretine dönüşür. Satırın sonundaki üç tırnak işareti, dizedeki bir tırnak işaretini ve dize sonlandırma karakterini temsil ediyor.
Dize değişmez değerleri birden çok satır içerebilir:
Dim x = "hello
world"
Sonuçta elde edilen dize, dize sabitinizde (vbcr, vbcrlf vb.) kullandığınız yeni satır dizilerini içerir. Artık eski geçici çözümü kullanmanız gerekmez:
Dim x = <xml><![CDATA[Hello
World]]></xml>.Value
Dizelerdeki Karakterler
Bir dize bir dizi Char değer olarak düşünülebilir ve String türü, dizilerin izin verdiği işlemelere benzeyen bir dize üzerinde birçok işleme gerçekleştirmenize olanak sağlayan yerleşik işlevlere sahiptir. .NET Framework'teki tüm diziler gibi bunlar da sıfır tabanlı dizilerdir. Bir dizedeki belirli bir karaktere, dizede göründüğü konuma göre bir karaktere erişmek için bir yol sağlayan özelliği aracılığıyla Chars başvurabilirsiniz. Örneğin:
Dim myString As String = "ABCDE"
Dim myChar As Char
' The value of myChar is "D".
myChar = myString.Chars(3)
Yukarıdaki örnekte, Chars dizenin özelliği dizedeki dördüncü karakteri döndürür; yani D, ve bunu öğesine myCharatar. Ayrıca Length özelliği aracılığıyla belirli bir dizenin uzunluğunu da alabilirsiniz. Bir dizede birden çok dizi türü işlemesi gerçekleştirmeniz gerekiyorsa, dizenin Char işlevini kullanarak bunu bir örnek dizisine ToCharArray dönüştürebilirsiniz. Örneğin:
Dim myString As String = "abcdefghijklmnop"
Dim myArray As Char() = myString.ToCharArray
Artık myArray değişkeni, her biri Char'den bir karakteri temsil eden myString değerlerinden oluşan bir dizi içeriyor.
Dizelerin Değişmezliği
Bir dize sabittir, yani değeri oluşturulduktan sonra değiştirilemez. Ancak bu, bir dize değişkenine birden fazla değer atamanızı engellemez. Aşağıdaki örneği göz önünde bulundurun:
Dim myString As String = "This string is immutable"
myString = "Or is it?"
Burada, bir değer verildiğinde bir dize değişkeni oluşturulur ve değeri değiştirilir.
Daha açık belirtmek gerekirse, ilk satırda bir tür String örneği oluşturulur ve değeri This string is immutableverilir. Örneğin ikinci satırında yeni bir örnek oluşturulur ve değeri Or is it?verilir ve dize değişkeni ilk örneğe başvurusunu atar ve yeni örneğe bir başvuru depolar.
Diğer iç veri türlerinden farklı olarak, String bir başvuru türüdür. Referans türündeki bir değişken bir fonksiyona veya alt programa bağımsız değişken olarak geçirildiğinde, dizenin gerçek değeri yerine verilerin depolandığı bellek adresine bir referans geçirilir. Bu nedenle, önceki örnekte değişkenin adı aynı kalır, ancak yeni değeri tutan sınıfın String yeni ve farklı bir örneğine işaret eder.