ruby 如何判断字符串是否相等

不是应该是ifstr1==str2...end这样么?为什么分别显示出str1和str2是相等的(包括大小写),但是却不执行?继续分析,执行pstr1==str2结果ms... 不是应该是
if str1==str2
...
end
这样么?
为什么分别显示出str1和str2是相等的(包括大小写),但是却不执行?
继续分析,执行
p str1==str2
结果msgbox显示nil
这又是为什么...
求助啦.
补充一下: 程序在ruby1.8是可以的,
运行p str1==str2会显示true,但是同样的代码粘到RGSS中就不行了.....
最近在研究rmxp的脚本编写
谢谢各位啦..
展开
 我来答
bixuehanqing
2012-02-06 · 超过14用户采纳过TA的回答
知道答主
回答量:30
采纳率:0%
帮助的人:39.2万
展开全部
ruby判断字符串用"=="就可以。判断对象可以用"equal?"方法。此处与java相反。
p str1==str2返回的结果应该是先打印"str1==str2"的结果后,然后再输出一个空行。这点可以查看相关api。所以msgbox显示的是nil(即返回的空行)。
测试实例:
irb(main):002:0> s=p "1"=="1"
true
=> nil
irb(main):003:0> s
=> nil
更多追问追答
追问
确实是这样,
p执行后输出表达式结果并返回nil,
可是为什么运算符 == 的返回值是nil?
追答
我用1.8.7的版本,返回结果是个布尔值。你的是什么版本的?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式