时间:2021-05-23
1、Ruby中方法名和变量名的命名规则一样(以小写字母开头,单词之间的分隔使用“_”,),不过可以在方法名后边带上!(重磅方法)或者?(布尔类型返回值)。
2、方法的参数请使用(),参数都是局部变量,可以为这些参数设置默认值,带“*”的参数是可选动态参数,可以传入一个或者多个,如果有普通参数,也有可选参数,可选参数要放在最后,如下边示例代码。
复制代码 代码如下:
def read_book(chinese='水浒传',english='Jane Eyre',*others)
puts "中文书籍:#{chinese},English book:#{english}"
temp=''
others.each do |o|
temp<<o<<' '
end
puts "其他可选书籍:#{temp}"
end
read_book
# 输出:中文书籍:水浒传,English book:Jane Eyre
read_book('西游记','Rails','红楼梦','三国演义','封神演义','隋唐演义')
# 输出:
# 中文书籍:西游记,English book:Rails
# 其他可选书籍:红楼梦 三国演义 封神演义 隋唐演义
3、方法的返回值不需要进行声明,默认情况下最后一行代码为返回值,但是若有条件判断返回的情况,需要用return声明,如下示例代码:
复制代码 代码如下:
def late_for_work?(minutes)
return true if minutes>=15
false
end
late_for_work?(10) #false
late_for_work?(15) #true
4、重磅方法是指方法名后带“!”的方法,普通方法返回的是原对象的一个拷贝,而重磅方法返回的始终是原对象本身,如下边示例代码:
复制代码 代码如下:
x='hello'
y=x.upcase
puts "x:#{x},y:#{y}" #输出:x:hello,y:HELLO x的值未发生改变
x='hello'
y=x.upcase!
puts "x:#{x},y:#{y}" #输出:x:HELLO,y:HELLO x的值已经发生改变
5、方法中可以使用别名关键字“alias”生成方法的一个拷贝,即使原方法发生了变化,别名拷贝也不会发生变化,如下示例代码:
复制代码 代码如下:
def show_alias
puts 'Before alias!'
end
alias alias_foo show_alias
def show_alias
puts 'After alias!'
end
show_alias #输出:After alias!
alias_foo #输出:Before alias!
6、Ruby的方法可以一次性返回多个值,不过实质上只是表面看来是返回多个值,本质上是返回了一个数组,数组中存储多个返回值,接收时可以直接定义多个变量一次性接收,如下示例代码:
复制代码 代码如下:
def more_result_foo
x=5
y=x*x
z=y-x+2
return x,y,z#返回x,y,z三个值
end
a,b,c=more_result_foo#a,b,c接收返回的x,y,z
m=more_result_foo#m接收返回的x,y,z
puts a,b,c#输出:5 25 22
puts m#输出:5 25 22
puts m.class#输出:Array
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
概括、ruby程序由一个或多个ruby源文件组成,源文件由模块组成,模块内部有控制结构、类对象、方法、及表达式等元素,下面就按照这个思路来总结ruby的程序组织
本文主要是总结学习pandas过程中用到的函数和方法,在此记录,防止遗忘1.重复值的处理利用drop_duplicates()函数删除数据表中重复多余的记录,比
ruby求50之内的素数的方法,感觉对比PHP和SHELL方法是最简单的,但SHELL中可以利用factor命令,而PHP中没有求素数的对应函数的,需要自己设计
笔者在学习pandas,在学习过程中总结了一下创建dataframe的方法,通过查阅资料总结遗下几种方法,如果你有其他的方法欢迎留言补充。练习代码请点击此处下载
C++中strstr函数的实现方法总结函数说明:包含文件:string.h函数名:strstr函数原型:externchar*strstr(char*str1,