Karşılaştırma İşleçleri (Visual Basic)
Visual Basic'te tanımlı karşılaştırma işleçleri şunlardır.
<işleç
<=işleç
>işleç
>=işleç
=işleç
<>işleç
Bu operatörler eşit oldukları ve nasıl yoksa, bunlar farklı olup olmadığını belirlemek için iki deyimi karþýlaþtýrýn.Is, IsNot, ve Like ayrı Yardım sayfalarında ayrıntılı olarak ele alınmıştır.İlişkisel karşılaştırma işleçleri, bu sayfada ayrıntılı olarak ele alınmıştır.
result = expression1 comparisonoperator expression2
result = object1 [Is | IsNot] object2
result = string Like pattern
Bölümleri
result
Gerekli.A Boolean karşılaştırmanın sonucu gösteren değer.expression
Gerekli.Herhangi bir deyimdir.comparisonoperator
Gerekli.Herhangi bir ilişkisel karşılaştırma işleci.object1, object2
Gerekli.Herhangi bir başvuru nesnesi adları.string
Gerekli.Herhangi bir String ifadesi.pattern
Gerekli.Herhangi bir String ifade ya da karakter aralığı.
Notlar
Aşağıdaki tabloda ilişkisel Karşılaştırma işleçlerini ve belirleyen koşulları listesini içerir mi result olan True veya False.
İşleç |
TrueEğer |
FalseEğer |
---|---|---|
<(Küçüktür) |
expression1< expression2 |
expression1> =expression2 |
<=(Küçük veya buna eşit) |
expression1< =expression2 |
expression1> expression2 |
>(Büyüktür) |
expression1> expression2 |
expression1< =expression2 |
>=(Büyüktür veya eşittir) |
expression1> =expression2 |
expression1< expression2 |
=(Eşit) |
expression1 = expression2 |
expression1< > expression2 |
<>(Eşit değil) |
expression1< > expression2 |
expression1 = expression2 |
[!NOT]
= İşleci (Visual Basic) Atama işleci olarak da kullanılır.
Is Operatörü, IsNot işleci ve Like işleci işleçler önceki tabloda farklı özel karşılaştırma işlevleri vardır.
Sayıları karşılaştırma
Bir ifade türü karşılaştırın ne zaman Single bir tür Double, Single ifade için dönüştürülür Double.Bu davranışı, Visual Basic 6'da bulunan davranışı karşısındaki değildir.
Benzer şekilde, ne zaman, karşılaştırma türü bir ifade Decimal türü bir deyimle Single veya Double, Decimal ifade için dönüştürülür Single veya Double.İçin Decimal ifadeler, kesirli herhangi bir değer daha az 1E-28 kaybolmuş olabilir.Bunlar değil, eşit karşılaştırmak iki değer gibi kesirli değer kaybına neden olabilir.Bu nedenle, eşitlik kullanırken dikkatli (=) iki kayan nokta değişkenleri karşılaştırmak için.İki sayı arasındaki farkı mutlak değerinin küçük bir kabul edilebilir tolerans daha az olup olmadığını sınamak daha güvenlidir.
Kayan nokta Imprecision
Kayan noktalı sayıları ile çalışırken, bunlar her zaman kesin bir gösterimi bellekte olmadığını aklınızda bulundurun.Bu değer karşılaştırma gibi belirli operasyonlardan beklenmeyen sonuçlar çıkmasına ve Mod İşleci (Visual Basic).Daha fazla bilgi için bkz. Veri Türleri Sorunlarını Giderme (Visual Basic).
Dizeleri karşılaştırma
Dizeleri karşılaştırmak, string ifadeler bağlıdır alfabetik sıralama düzenlerine göre değerlendirilir Option Compare ayarı.
Option Compare Binaryesaslarını dize karşılaştırmalarını karakterler iç ikili temsilini türetilmiş bir sıralama düzeni üzerinde.Sıralama düzeni kod sayfası tarafından belirlenir.Aşağıdaki örnek, tipik ikili sıralama düzenini gösterir.
A < B < E < Z < a < b < e < z < À < Ê < Ø < à < ê < ø
Option Compare Textesaslarını dize karşılaştırmalarını üzerinde metin, büyük küçük harf duyarlı sıralama düzeni uygulamanızın bölgeye göre belirlenir.Ayarladığınızda Option Compare Text ve önceki örnekte karakterleri sıralamak, aşağıdaki metin sıralama düzeni uygular:
(A=a) < (À= à) < (B=b) < (E=e) < (Ê= ê) < (Ø = ø) < (Z=z)
Yerel Yükleme
Ayarladığınızda Option Compare Text, uygulamanın çalıştığı yerel ayar dize karşılaştırma sonucu bağlı olabilir.İki karakter, bir yerel ancak başka eşit olarak karşılaştırmak.Dize karşılaştırma oturum denemesi kabul edilip gibi bir önemli kararlar almak için kullanıyorsanız, yerel duyarlılık uyarı olmalıdır.Ya da dikkate Option Compare Binary ya da arama StrComp, hesaba, geçen yerel.
Türsüz programlama ile ilişkisel karşılaştırma işleçleri
İlişkisel karşılaştırma işleçleri ile kullanımını Object ifadeler altında izin yok Option Strict On.Zaman Option Strict olan Offve her iki expression1 veya expression2 olan bir Object deyim, çalışma zamanı türleri nasıl karşılaştırılır belirlemek.Aşağıdaki tabloda, ifadeler nasıl karşılaştırılır ve türüne bağlı olarak işlenen çalışma zamanı tür karşılaştırma sonucu gösterir.
İşlenen |
Karşılaştırma |
---|---|
Her ikisi deString |
Sıralama özellikleri dizesini temel alan karşılaştırma sıralayın. |
İkisi de sayısal |
Nesneler dönüştürülür Double, sayısal bir karşılaştırma. |
Bir sayısal ve birString |
String Dönüştürülmesi için bir Double ve sayısal bir karşılaştırma gerçekleştirilir.String Dönüştürülemez Double, bir InvalidCastException atılır. |
Ya da baþvuru türleri farklı olanString |
Bir InvalidCastException atılır. |
Sayısal karşılaştırmalar kabul Nothing 0.Dize karşılaştırmaları kabul Nothing olarak "" (boş dize).
Aşırı
İlişkisel karşılaştırma işleçleri (<.<=>, >=, =, <>) olabilir aşırı, o sınıf veya yapı türü bir işlenen sahip olduğunda bir sınıf veya yapı davranışlarını tanımlayabilirsiniz, anlamına gelir.Bu tür bir sınıf veya yapı kodunuzu bu işleçlerden birini kullanıyorsa, yeniden tanımlanan davranışı anladığınızdan emin olun.Daha fazla bilgi için bkz. İşleç Yordamları (Visual Basic).
Dikkat = İşleci (Visual Basic) aþýrý yüklenmiþ olabilir yalnızca ilişkisel karşılaştırma işleci olarak, atama işleci olarak değil.
Örnek
Aşağıdaki örnek ifadeler karşılaştırmak için kullandığınız ilişkisel karşılaştırma işleçleri çeşitli kullanımlarını gösterir.İlişkisel karşılaştırma işleçleri dönmek bir Boolean ine ifade veren olup olmadığını gösteren bir sonuç True.Uyguladığınızda > ve < işleçleri dizeleri için karşılaştırma yapılan dizelerini normal alfabetik sıralama düzenini kullanarak.Bu sırada yerel ayara bağlı olabilir.Sıralama büyük küçük harf duyarlı olup değil bağlıdır Seçenek karşılaştırma ayarı.
Dim testResult As Boolean
testResult = 45 < 35
testResult = 45 = 45
testResult = 4 <> 3
testResult = "5" > "4444"
Yukarıdaki örnekte ilk karşılaştırma işlevi False ve kalan karşılaştırmaları dönmek True.
Ayrıca bkz.
Görevler
Veri Türleri Sorunlarını Giderme (Visual Basic)
Başvuru
Visual Basic'de İşleç Önceliği
İşlevselliğe Göre Listelenmiş İşleçler (Visual Basic)