ruby IRB vs IDE中的代码为什么IRB会带来结果而IDE不会?

时间:2017-10-06 16:41:04

标签: ruby irb

今天我得到了正确的解决方案。我在IRB中完美地运行它,它的解释非常完美。但是,如果我将该代码粘贴到ide中然后从控制台调用该程序,它就会显示任何内容,尽管它会运行。如果我在布尔代码之前添加一个puts以查看某些内容,它会将我列为true false等,但不会像IRB intepreter那样,它实际上会将一个数组中的单词包含在另一个数组的短语中。

这显然是说我对天堂的名字如何运作有着无法理解的无知。好像IDE没有解释任何东西,所以我从Komodo开始安装了Rubymine并安装了IDE可以使用的ruby解释器。没有区别。

我已经复制并粘贴了Tutorialspoint中的代码,并获得了这个永久链接,可以显示实时发生的情况。任何人都可以告诉我如何让IDE只做IRB做的事情

http://tpcg.io/HYfIrX

代码就是这个

ScopedPointer<Slider> sliderArray[128];


  for(int i=0; i==128; i++) 
{sliderArray[i]->setBounds  (0   +i  *sliderX    ,       sliderY , sliderWidth, sliderHeight );}


}                                     


for(int i=0; i==128; i++) 
{  
    addAndMakeVisible (sliderArray[i]= new Slider ("Value"));
    sliderArray[i]->setRange (sliderMinimumRange, sliderMaximumRange, sliderRangeStepsize );
    sliderArray[i]->setSliderStyle (Slider::LinearBarVertical);
}

这就是IRB中出现的情况,这很精致,这就是我想要的

words = ["house", "dog", "cat", "man", "girl"]
phrases = ["I have a house", "I am a dog", "I am man"]

words.select { |word| phrases.any? { |phrase| phrase.include? word } }

但是如果你运行相同的代码(除了我所看到的“PUTS”之外的事情“它并没有带来我想要的所有我想要的布尔价值

http://tpcg.io/HYfIrX

1 个答案:

答案 0 :(得分:1)

代码中的链接是

words.select { |word| puts phrases.any? { |phrase| phrase.include? word } }

问题中陈述的正确代码(有效)

words.select { |word| phrases.any? { |phrase| phrase.include? word } }

发现差异:)