我用一些基本的ruby代码遇到了一些意想不到的事情,而且我不太了解自己在做什么错。
irb(main):014:0> if "x".include? "x" && "y".include? "y"
irb(main):015:1> puts "true"
irb(main):016:1> end
Traceback (most recent call last):
3: from /usr/bin/irb:23:in `<main>'
2: from /usr/bin/irb:23:in `load'
1: from /usr/lib/ruby/gems/2.6.0/gems/irb-1.0.0/exe/irb:11:in `<top (required)>'
SyntaxError ((irb):14: syntax error, unexpected tSTRING_BEG, expecting then or ';' or '\n')
....include? "x" && "y".include? "y"
... ^
(irb):16: syntax error, unexpected end, expecting end-of-input
irb(main):017:0>
但是如果我使用and
而不是&&
,就可以了。
irb(main):011:0> if "x".include? "x" and "y".include? "y"
irb(main):012:1> puts "true"
irb(main):013:1> end
true
=> nil
答案 0 :(得分:3)
将参数放在括号中。
您将翻译员遗忘了,这使他们感到困惑。
irb(main):002:0> puts 'true' if "x".include?("x") && "y".include?("y")
true