Ruby错误:语法错误,意外的tSTRING_BEG,预期为then或';'或'\ n'

时间:2019-04-26 18:42:03

标签: ruby

我用一些基本的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

1 个答案:

答案 0 :(得分:3)

将参数放在括号中。

您将翻译员遗忘了,这使他们感到困惑。

irb(main):002:0> puts 'true' if "x".include?("x") && "y".include?("y")
true