Ruby中方法的参数

时间:2015-04-05 15:41:50

标签: ruby

课程视频&文本提供了这样的示例:"ohmy".concat("gosh"(upcase))。我得到的对象是字符串,该方法接受参数,这是方法中的方法。

然后练习是这样的:center(integer),它以整数作为参数,并将字符串置于多个空间中,这没有任何意义。我只看到字符串类中的单词和fixnum和float类中的数字,据我所知,整数是一个数字。

不知道我应该如何将center(integer)变成类似"ohmy".concat("gosh"(upcase))的例子。

如果可能的话,我需要一个如何应用这两个练习的例子。

  1. center(integer)#将整数作为参数并将字符串置于多个空格中 - 确保参数足够大以查看其工作原理

  2. count(string)#将字符串作为参数,并计算该字符串在原始字符串中出现的次数

1 个答案:

答案 0 :(得分:2)

您提供的代码在语法上不正确:

> "ohmy".concat("gosh"(upcase))
SyntaxError: (irb):1: syntax error, unexpected '(', expecting ')'
"ohmy".concat("gosh"(upcase))
                     ^
    from /usr/bin/irb:12:in `<main>'

应该是

> "ohmy".concat("gosh".upcase)
=> "ohmyGOSH"

“中心”方法的工作原理如下:

> "test".center(10)
=> "   test   "

“count”方法的工作原理如下:

> "test".count("t")
=> 2

另外,请注意,在Ruby中,括号有时是可选的,因此以下也可以使用,但是括号使它更容易阅读,恕我直言:

> "ohmy".concat "gosh".upcase 
=> "ohmyGOSH"
> "test".center 10
=> "   test   "
> "test".count "t"
=> 2

如果没有意义,请告诉我,我可以尝试更好地澄清。