有趣的Ruby-学习笔记3
Ruby方法
方法名要以小写字母开头。假设用大写字母开头会被作为常量 (这点非常奇怪)
定义一个无參的方法
def method_name expr..
end
定义一个有參的方法
def method_name (var1, var2)expr..
end
给參数设定默认值
def method_name (var1=value1, var2=value2)expr..
end
调用方法非常easy
method_name 25, 30
返回值
def testi = 100j = 10k = 0
end
在调用这种方法时。将返回最后一个声明的变量 k。
也能够用常规的return语句来返回值
非常有趣的是:假设给出超过两个的表达式。包括这些值的数组将是返回值。
假设未给出表达式,nil 将是返回值
#!/usr/bin/ruby
# -*- coding: UTF-8 -*-def testi = 100j = 200k = 300
return i, j, k
end
var = test
puts var
返回
100
200
300
可变数量的參数
#!/usr/bin/ruby
# -*- coding: UTF-8 -*-def sample (*test)puts "參数个数为 #{test.length}"for i in 0...test.lengthputs "參数值为 #{test[i]}"end
end
sample "Zara", "6", "F"
sample "Mac", "36", "M", "MCA"
类方法
有一个奇怪的默认规则:当方法定义在类的外部,方法默认标记为 private。还有一方面,假设方法定义在类中的,则默认标记为 public。
Ruby alias 语句
alias 方法名 方法名
alias 全局变量 全局变量
尽管真的不知道这个有什么作用。。。
Ruby undef 语句
转载于:https://www.cnblogs.com/wzzkaifa/p/7198837.html
有趣的Ruby-学习笔记3相关推荐
- Ruby学习笔记_索引贴
学习Ruby也有段时间了,在学习的同时也做了些笔记并发到了园子睐.看到园子里的大虾们在出了一系列文章后都会做个索引贴,这样很方便,所以本人今天抽了个空就把它整理了下,方便自己的同时也方便感兴趣的朋友. ...
- ruby学习笔记(11)--symbol与hash参数
symbol是啥就不深入的讨论了,只简单说说symbol的好处 ruby内部对于每个对象,都会有一个数字id用来标识并区分,可以用xxx.object_id来查看 puts "0001&qu ...
- ruby学习笔记(2)-chomp,chop的区别
还没开始系统性的学习Ruby,最近在看metasploit框架的exploit会涉及到Ruby脚本,也就硬着头皮一遍查阅资料一遍做些笔记吧. Ruby字符串中存在chop和chomp的内置函数.我在h ...
- Programming Ruby学习笔记一
最近在学习Programming Ruby,做点读书笔记来记录下自己的成长也是不错的.当然更希望的是各位大牛能指出本人的不足,在这里先谢谢大家了. 第一章 入门 讲的是如何安装Ruby,在Ru ...
- Ruby 学习笔记(和 Python3 语法进行对比)
我是先接触 Python3 的,如果我自己主动来选择,可能不会再去学 Ruby(可能先入为主的思想太根深蒂固了,不过最主要的还是太懒了),然鹅由于种种原因,我还是要来看一下Ruby(真是天理难容,/大 ...
- Ruby学习笔记:一、数据类型
2019独角兽企业重金招聘Python工程师标准>>> 今天老大问大家,谁有兴趣学习下Ruby,部门马上要有一个使用Ruby的项目.入职两个月,几乎每天都是做一些SQL优化或是JS优 ...
- Ruby 学习笔记3
在Ruby中有很多方法是以?和!号结尾的 "?"被用于标示谓词,即返回Boolean直的方法,如Array.empty?(判断数组中元素是否为空) "!"出现在 ...
- 【ruby】ruby学习笔记之--环境搭建
1.安装ruby环境 这里以windows为例,ruby可以安装在Linux中,首先.先到ruby的官网下载https://rubyinstaller.org/downloads/最新的ruby环境, ...
- Ruby学习笔记-循环与选择结构
一.循环结构 1. for-in语句: Ruby提供的for...in语句主要用于迭代数组和Hash对象中的元素,与其它语言的for 语句有一定的差距,语法格式: for val in ...
- ruby学习笔记(3)--语法层面的先见之明
看了几天ruby,发现c#中很多一直被称道的语法特性,ruby早在几年前就有了: 1.c#中的params关键字 class Program{static void Main(string[] arg ...
最新文章
- 使用 electron-updater 自动更新应用
- 数组-删除排序数组中的重复项(双指针法)
- 窗口和元素的大小:offset client scroll
- re:Invent第三天:除了拥抱混合云,AWS还一口气发了这些新产品
- linux mem设备是什么,linux下/dev/mem分析
- python计算结果向上取整_python中的向上取整向下取整以及四舍五入的方法
- Linux下的iscsi(设备的共享服务)
- bcb quickrep保存为 图片_不容错过的SCI图片处理和组图方法
- 全网最好用的关键词的组合软件使用教程可排列组合随机生成
- android webview权限申请_android中使用WebView请求网页
- 比亚迪宋Pro电路图和维修手册
- 【PMP】PMBOK 笔记 第6章 项目时间管理
- gyb优化事项(1)
- 工业级交换机级联介绍
- 【matlab选题推荐二】MATLAB差影法车型识别算法研究
- 1628_MIT 6.828 xv6_chapter0操作系统接口
- Linux进程信号——信号的产生
- Java数字位数不足前面补0的几种办法
- php5漏洞汇总,ThinkPHP 5.x RCE 漏洞分析与利用总结
- vue 生命周期 详解
热门文章
- Shell基础学习(六) 流程控制
- 转:fopen与open可以转换吗
- oracle连接满报错日志,Oracle归档日志满了导致Oracle连接(ORA-00257)报错处理
- python饼状图教程_Python数据可视化:饼状图的实例讲解
- AUTOSAR从入门到精通100讲(三)-基于UDS服务的BootLoader架构和刷写流程
- 少儿编程100讲轻松学python(四)-python如何判断是否为数字字符串
- 推广的euclid_欧几里德(Euclid)贴近度评价法在人类进化上的应用
- java对两个表进行排序_Excel工作簿中多个worksheet工作表,如何对工作表进行排序?...
- 简单点赞效果html,js实现点赞效果
- nginx 上传文件漏洞_文件上传及解析漏洞