回答
這樣做:
if @array.include?('cat') && ! @array.include?('dog')
!
和not
大多做同樣的事情,但不能完全互換使用。
對於好奇:ruby語法分析器中實際存在一些怪癖,使得它無法解釋像這樣的表達式,儘管它們在理論上可以解析和合理。
這些可以被解析:
not true && true
true && not(true)
但這些不能:
true && not true
true && not (true)
注意,最後一個只在額外的空間是不同的(
之前!
兩者之間的唯一區別就是優先。 – 2012-04-10 00:56:52
實際上ruby的解析器中存在一些怪異的表情,就像給出的表情一樣。 – 2012-04-10 00:58:00
1.8.7也不能解析'true && not(true)'。如果您在第二學期放置括號,則可以解析後兩項。 '真&&(不正確)'。我猜'&&'的優先級太強了,它會使解析器混淆:) – Kelvin 2013-02-04 22:13:57
- 1. Javascript語法:a!= b &&(c = b)
- 2. 鋒MYSQL語句:WHERE NOT(A或B)
- 3. mysql_fetch_array給出語法錯誤
- 4. 輸入(a + b)** 2,輸出a * a + a * b + b * a + b * b
- 5. tf_version_script給出語法錯誤
- 6. EXPR給出語法錯誤
- 7. jquery語法(.a .b .c)
- 8. php語法$ a = $ b = 1;
- 9. 簡單的yacc語法給出錯誤
- 10. SQLite'IF NOT EXISTS'語法錯誤
- 11. WHERE NOT EXISTS語法錯誤
- 12. Bash語法錯誤:「[[:not found」
- 13. 如何解析[a/b]?語法錯誤在Rebol?
- 14. Matlab錯誤A(I)= B
- 15. ilmath.min(a,b)中的錯誤?
- 16. 創建一個List(String)給出錯誤「Object reference not set to a instance of a object。」
- 17. 變量名給出語法錯誤(Python)
- 18. 的Ruby語法問題:合理的(A,B)和Rational.new(A,B)
- 19. 線性方程的錯誤解法,或爲什麼A *(A \ B)不等於B?
- 20. 語法錯誤,意想不到的 'A A A A'(T_STRING)
- 21. 在Javascript控制檯中給出1,{a:1,b:2}給出錯誤的{a:1}打字行爲是什麼?
- 22. B = A對B = A [:]在串|列出
- 23. 給jQuery的語法錯誤
- 24. 浮點錯誤會導致'a /(double)b> = a/b'失敗嗎?
- 25. 創建sqlite數據庫給出語法錯誤時出錯
- 26. echo html和php給出語法錯誤
- 27. Dev-C++給出'&'參考語法錯誤
- 28. ES6模板給出語法錯誤
- 29. @Master聲明給出語法錯誤
- 30. MySQL「NOT IN」/「LEFT JOIN」給出錯誤
_not working_以什麼方式?你可以給你的程序的所有三行和你預期的輸出嗎? – sarnold 2012-04-10 00:52:20
對我來說看起來完全有效,請嘗試打印數組的內容以查看實際內容。另外,用英語寫出你想要的語句是有用的。 I.e:當數組有'貓'並且數組沒有'狗'時,我想進入if語句。 – 2012-04-10 00:53:43
你想完成什麼?測試將是理想的。 – shime 2012-04-10 00:58:41