And İşleci (Visual Basic)
İki ifade üzerinde mantıksal bir bağlaca veya iki Boolean
sayısal ifadede bit düzeyinde bir bağlaca sahiptir.
Sözdizimi
result = expression1 And expression2
Parça
result
Gerekli. Herhangi bir Boolean
veya sayısal ifade. Boole karşılaştırması için iki result
Boolean
değerin mantıksal bağlaçtır. Bit düzeyinde işlemler için, result
iki sayısal bit deseninin bit düzeyindeki birleşimini temsil eden sayısal bir değerdir.
expression1
Gerekli. Herhangi bir Boolean
veya sayısal ifade.
expression2
Gerekli. Herhangi bir Boolean
veya sayısal ifade.
Açıklamalar
Boole karşılaştırması için ise result
ve yalnızca hem hem de expression1
expression2
olarak değerlendirilirse True
olurTrue
. Aşağıdaki tabloda nasıl result
belirlendiği gösterilmektedir.
Varsa expression1 |
Ve expression2 |
değeri result : |
---|---|---|
True |
True |
True |
True |
False |
False |
False |
True |
False |
False |
False |
False |
Not
Boole karşılaştırmasında And
, işleç her zaman yordam çağrıları yapmayı da içerebilen her iki ifadeyi de değerlendirir. AndAlso İşleci kısa devre gerçekleştirir; başka bir deyişle , ise expression1
False
expression2
değerlendirilmez.
Sayısal değerlere uygulandığında And
, işleç iki sayısal ifadede aynı şekilde konumlandırılmış bitlerin bit düzeyinde karşılaştırmasını yapar ve karşılık gelen biti result
aşağıdaki tabloya göre ayarlar.
Bit içinde expression1 ise |
Ve bit içinde expression2 |
içindeki bit result : |
---|---|---|
1 | 1 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
0 | 0 | 0 |
Not
Mantıksal ve bit düzeyinde işleçler diğer aritmetik ve ilişkisel işleçlerden daha düşük önceliğe sahip olduğundan, doğru sonuçlar elde etmek için bit düzeyindeki işlemler parantez içine alınmalıdır.
Veri Türleri
İşlenenler bir Boolean
ifade ve bir sayısal ifadeden oluşuyorsa, Visual Basic ifadeyi Boolean
sayısal bir değere (için True
–1 ve için False
0) dönüştürür ve bit düzeyinde bir işlem gerçekleştirir.
Boole karşılaştırması için sonucun veri türü şeklindedir Boolean
. Bit düzeyinde karşılaştırma için sonuç veri türü ve expression2
veri türlerine uygun sayısal bir türdürexpression1
. İşleç Sonuçlarının Veri Türleri'ndeki "İlişkisel ve Bit Düzeyinde Karşılaştırmalar" tablosuna bakın.
Not
İşleç And
aşırı yüklenebilir, yani bir işlenen bu sınıf veya yapı türüne sahip olduğunda bir sınıf veya yapı davranışını yeniden tanımlayabilir. Kodunuz bu işleci böyle bir sınıf veya yapıda kullanıyorsa, yeniden tanımlanmış davranışını anladığınızdan emin olun. Daha fazla bilgi için bkz . İşleç Yordamları.
Örnek 1
Aşağıdaki örnek, iki ifade üzerinde mantıksal bir bağlaç gerçekleştirmek için işlecini kullanır And
. Sonuç, her iki ifadenin de olup olmadığını gösteren bir Boolean
değerdir True
.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck As Boolean
firstCheck = a > b And b > c
secondCheck = b > a And b > c
Yukarıdaki örnek sırasıyla ve False
sonuçlarını True
oluşturur.
Örnek 2
Aşağıdaki örnek, iki sayısal ifadenin And
tek tek bitlerinde mantıksal bağlaç gerçekleştirmek için işlecini kullanır. sonuç desenindeki bit, işlenenlerdeki karşılık gelen bitlerin her ikisi de 1 olarak ayarlandıysa ayarlanır.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (a And b)
secondPattern = (a And c)
thirdPattern = (b And c)
Yukarıdaki örnek sırasıyla 8, 2 ve 0'ın sonuçlarını oluşturur.