"-eq", Powershell test başvurusu eşitliğindedir (C# içinde "==" gibi) veya Object.Equals çağrısı yapar()Güç kabuğu test referans eşitliğindeki -eq anahtar sözcüğü var mı yoksa Object.Equals() öğesini kullanın
5
A
cevap
5
eşitliği testi kadar basit olmadığı.
'a' -eq 'A'
'un doğru döndüğünü göz önünde bulundurun. Bu, PowerShell'in sadece Equals'ı çağırmaktan daha fazlasını yaptığı anlamına gelir.
Nesneleriniz içinse Equals
beklendiği gibi çağrılmaktadır.
Add-Type -TypeDefinition @"
using System;
public class X {
public string Property;
public X(string s) {
Property = s;
}
public override bool Equals(object o) {
System.Console.WriteLine("equals on {0}", Property);
return Property == ((X)o).Property;
}
public override int GetHashCode() { return 20; }
}
"@
$o1 = New-Object X 'a'
$o2 = New-Object X 'A'
$o1 -eq $o2
Ayrıca bu PowerShell, dönüştürme işlemini oldukça kullanır. Dolayısıyla, işlenenler aynı türde değilse, sağ işlenen sol işlenenin türüne dönüştürülür. Bu yüzden '1' -eq 1
başarılı.
3
Operatör -qq hiçbiri (C#) ve Object.Equals() içindeki "==" gibi değildir. Basit örnek: büyük/küçük harf duyarsız dize karşılaştırması yapar. Aslında, kapaklar altında çok sayıda dönüşüm gerçekleştirir ve bazılarının maalesef, her zaman sezgisel olarak beklenmeyebilir. İşte
bazı ilginç demo# this is False
[ConsoleColor]::Black -eq $true
# this is True
$true -eq [ConsoleColor]::Black
İlgili konular
- 1. debugger anahtar sözcüğü
- 2. ruby anahtar sözcüğü argümanları
- 3. datetime.datetime var mı yoksa Yok
- 4. Django 1.8 - FieldError: Anahtar sözcüğü
- 5. Nesnede var mı yoksa javascriptte mi var
- 6. Objects.equals ve Object.equals
- 7. Yeniden Eşleştirici bu anahtar sözcüğü alanlara zorlayalım
- 8. Dizin var mı, yoksa linux değil mi?
- 9. "dynamic" anahtar sözcüğü ve JSON verisi
- 10. `statik` anahtar sözcüğü içindeki işlev nedir?
- 11. json.net anahtar yöntem var mı?
- 12. Java'da anahtar (java.lang.Object) var mı?
- 13. MaskEdit'in maskeleri için referans var mı?
- 14. subversion destek sözcüğü, excel, powerpoint dokümanlar var mı?
- 15. Scala yorumlayıcısında güç modundan çıkmak için bir yol var mı?
- 16. - akıllı mı yoksa aptal mı?
- 17. django.db.connection.queries öğesini temizlemenin bir yolu var mı?
- 18. Test için kullanmak için sürekli güncellenen RSS feed servisleri var mı, yoksa sadece çok aktif RSS beslemeleri var mı?
- 19. güç (C++ - {templates}) = güç (C++)?
- 20. Jquery arama sözcüğü dizgede
- 21. Kabuğu
- 22. Dosya bir klasörde var mı, yoksa bulunmuyor mu?
- 23. Denetleyici düzeyinde yetkisiz cancan eylemlerini test etmenin herhangi bir avantajı var mı, yoksa bu gereksiz mi?
- 24. Jinja şablonu, çift tırnak mı yoksa tek tırnak mı yoksa çift tırnak mı, yoksa tek tırnak mı olarak yazıyorsunuz? "
- 25. Neden "# değil" anahtar kelimesi var mı?
- 26. Behat & Mink: Test ortamını kullanın
- 27. Modülde Object.Equals() yöntemi nasıl kullanılır?
- 28. İnsan davranışları/algı kalıpları ile ilgili bir referans var mı?
- 29. Basit görünümde çok fazla test var mı?
- 30. Xunit için Parametreli Test Armatürleri Var mı?