ruby语法之方法
2024-09-24 09:09:40
ruby中的方法相当于python的函数
其定义规则为:
方法名应以小写字母开头。如果您以大写字母作为方法名的开头,Ruby 可能会把它当作常量,从而导致不正确地解析调用。
方法应在调用之前定义,否则 Ruby 会产生未定义的方法调用异常。
def 开头 end结尾,里面的代码没用格式的要求,例如不要求缩进
例如:
[root@orl11-infa ruby-test]# cat test.rb
def my_method(a1=1,b1=2)
c=a1+b1
return c
end
kk=my_method 5,6
puts kk
[root@orl11-infa ruby-test]# ruby test.rb
11
我们把方法首字母大写 My_method
[root@orl11-infa ruby-test]# ruby test.rb
test.rb:5:in `<main>': undefined method `my_method' for main:Object (NoMethodError)
例如2 接收不确定的参数
[root@orl11-infa ruby-test]# cat test.rb
#!/usr/bin/ruby
## -*- coding: UTF-8 -*- def my_method(*para)
puts "参数的数量 #{para.length}"
yy=""
para.each do |temp|
yy=yy+temp
end
puts yy
return yy
end
kk=my_method "a","b","c"
puts kk
zz=my_method "one","two","three","four","five"
puts zz 执行结果:
[root@orl11-infa ruby-test]# ruby test.rb
参数的数量 3
abc
abc
参数的数量 5
onetwothreefourfive
onetwothreefourfive
-------------------------------------------------------------------------------------------------
使用for循环:
#!/usr/bin/ruby
## -*- coding: UTF-8 -*-
def my_method(*para)
puts "参数的数量 #{para.length}"
y=''
for i in para
y<< i
end
return y
end
kk=my_method "a","b","c"
puts kk
zz=my_method "one","two","three","four","five"
puts zz
最新文章
- 异步与并行~ReaderWriterLockSlim实现的共享锁和互斥锁
- bootscript/javascript组件
- 【转】如何查看当前Open的Cursor
- 剑指Offer:面试题24——二叉搜索树的后序遍历序列(java实现)
- NGUI OnChange Event
- 【Matplotlib】图例分开显示
- 使用注解实现IOC
- Magento创建configurable产品的要点
- 批量更新memcached缓存
- Django 1.10中文文档—第一个Django应用Part1
- libvirt 基于C API基本使用案例
- 第二十次codeforces竞技结束 #276 Div 2
- 关于windows线程同步的四种方法
- 【转】千万不要在JS中使用连等赋值操作
- C# 传统四舍五入保留两位小数(网上流传好多错误的版本)
- JQ初级
- iOS12系统应用发送邮件中的附件
- Spring的诞生
- git修改提交的用户名
- Linux常见问题总结【转】