Hanya melihat Ruby:
TL; DR
Gunakan none?melewatinya satu blok dengan ==untuk perbandingan:
[1, 2].include?(1)
#=> true
[1, 2].none? { |n| 1 == n }
#=> false
Array#include?menerima satu argumen dan digunakan ==untuk memeriksa setiap elemen dalam array:
player = [1, 2, 3]
player.include?(1)
#=> true
Enumerable#none?juga dapat menerima satu argumen yang digunakan ===untuk perbandingan. Untuk mendapatkan perilaku yang berlawanan, include?kami menghilangkan parameter dan memberikannya blok ==untuk perbandingan.
player.none? { |n| 7 == n }
#=> true
!player.include?(7) #notice the '!'
#=> true
Dalam contoh di atas kita dapat menggunakan:
player.none?(7)
#=> true
Itu karena Integer#==dan Integer#===setara. Tapi pertimbangkan:
player.include?(Integer)
#=> false
player.none?(Integer)
#=> false
none?kembali falsekarena Integer === 1 #=> true. Tetapi notinclude?metode yang benar-benar harus dikembalikan true. Seperti yang kami lakukan sebelumnya:
player.none? { |e| Integer == e }
#=> true
doruby yang valid? saya mendapatkan kesalahansyntax error, unexpected end-of-input(berfungsi jika saya menghapusdo)