为什么返回currentCell.nameLabel.text = users[indexPath.row]
?
valueToPass = users[indexPath.row]
答案 0 :(得分:4)
如果str
是任何字符串,
str == str.reverse!
#=> true
例如,
str = "abc"
str == str.reverse!
#=> true
str == str.reverse!
是str.==(str.reverse!)
的语法糖。 Ruby评估此表达式的第一步是评估参数str.reverse!
。该表达式有两件事:用反转的字符串替换str
的值,并返回反转的字符串。然后,方法==
将str.reverse!
返回的值与str
保留的值进行比较。由于它们相同,因此表达式返回true
。
答案 1 :(得分:1)
reverse!
。此方法修改了word
,但是您只需要获取修改后的结果。因此,您应该改用reverse
。您的方法可以简化为:
def palindrome?(word)
word == word.reverse
end
"Stats"
不是回文,除非您将其转换为较低或较高的寄存器:
def palindrome?(word)
word = word.downcase
word == word.reverse
end
测试最终版本的结果是:
puts palindrome?("Stats")
# => true