ruby编程语言-学习笔记1
安装完 ruby ri irb ruby-devel
1. 先来个简单的,写个helloworld 给新手们 (terminal中,# 代表root权限,$ 代表用户权限, 前面的就不写了。)
# vim hello.rb
puts "hello world"
检查下语法# ruby -c hello.rb
编译 # ruby hello.rb
结果:hello world
2.好了开始说点有营养的了
创建2个文件,如下
main.rb
#文件名main.rb load "Ambiguous.rb" newInstance = Ambiguous.new newInstance.x #调用了x方法,返回值为1 ,但是没有输出
puts"---------1" puts "newInstance return =" + newInstance.x.to_s #输出 newInstance return =1
puts"---------2" newInstance.test #test 方法里有puts输出
puts"---------3" puts "newInstance return =" + newInstance.test.to_s #没有值,因为test()方法没有返回值,但是又调用了一边test()方法
puts"---------4"
Ambiguous.rb
#文件名Ambiguous.rb class Ambiguous
def x; 1; end # a method named 'x', always return 1 def test
puts x # no variable been seen, refers method above, prints 1 x = 0 if false #create variable 'x' overhere, then confirm x equal 0?
puts x //输出的是变量x的值 ,而不是method x 的返回值 x = 2 //assign a value to x
puts x //输出变量x 的值 end
end
检查下语法# ruby -c ambiguous.rb main.rb
编译 # ruby main.rb
结果:(我就偷个懒)结果大家就自己输出看吧,毕竟自己实践了才能弄明白是不?
在上面需要注意的是:
1.变量名和方法名 声明问题,不要混淆。
2.方法的返回值问题
3.to_s 指to string,还有to_i 、to_f 等等
是不是超级简单?选择一种语言就是选择一种生活方式,
自从我在以前的公司,开始做InstallShield的脚本方面的工作,发现脚本语言的修改,维护。。都太轻松了。
懂的话,一个人都可以把工程1天修改完毕。
不会像C++那样,工程一大,容易出现各种问题,改个需求,需要牵扯很多地方,外包又是各种加班赶进度,改完客户又改需求,又要加班赶进度。这里面太花时间了。
做人,一定不能让变化赶着你走,一定要让自己赶在变化之前就做好准备。
ruby编程语言-学习笔记1的更多相关文章
- ruby编程语言-学习笔记5(第5章 语句和控制结构)
以下是2种表达方式一样. if expression code end if expression then #推荐这种形式 code end expression的值不是false或nil,则cod ...
- ruby编程语言-学习笔记4(第4章 表达式和操作符)
4.6.9 范围 Flip-Flops: ..和... ..和... 操作符不是基于方法的,无法重定义.(优先级比较低) x+1 .. x*x #可以认为是x+1 至 x*x 的范围 因为操作 ...
- ruby编程语言-学习笔记2(第4章 表达式和操作符)
对属性和数组元素的赋值 o.m + = 1 ===>o.m = (o.m()+ 1) # 对 o.m()这个方法的结果+1 对数组元素的赋值也是通过 方法调用来完成. 0.[] = 1 == ...
- ruby编程语言-学习笔记3(第4章 表达式和操作符)
4.6 操作符 了解优先级很重要 位移操作符 (0b1011)<< 1 # ==> "10110" 11 << 1 = 22 ...
- ruby语言学习笔记2
ruby学习笔记2 (摘自<ruby程序设计语言教程(中文版)>.pdf,全书25页) 1.同一个问题ruby有多个解决方案,途径 ruby之父:松本行弘(Matz),1993年创立 r ...
- ruby 字符串学习笔记1
1 从一种数据结构中构件字符串 hash = { key1: "val1", key2: "val2" } string = "" hash ...
- 《ruby编程语言》笔记2 对象
ruby是一门非常纯粹的面向对象的语言:所有值都是对象,而且没有基本类型(primitive type)和对象类型的区别,这一点不同于其他语言.在Ruby中,所有对象都继承一个Object类,而且共享 ...
- 《ruby编程语言》笔记 1
赋值: ruby支持并行赋值,即允许在赋值表达式中出现多余一个值和多于一个的变量: x,y=1,2a,b=b,ax,y,z=[1,2,3] (python同样可以正常上面的语句). Methods i ...
- Ruby语言学习笔记
在codecademy上开始玩ruby了 1.数据类型:boolean,string,number 变量直接用即可,不用声明(“拿来主义”) 运算符:+ - * / ** % == != && ...
随机推荐
- MySQL5.7 linux二进制安装
200 ? "200px" : this.width)!important;} --> 介绍 MySQL5.7出来也有大半年了,业内也一直在宣传5.7有多么的N,官网的也是宣 ...
- C语言中的程序终止函数
在C语言的标准库<stdlib.h>中提供了一些与正常或者不正常的程序终止有关的函数,下面分别对其进行简单介绍. 参考文献: [1] C和指针,P298,342 [2] C程序设计语言现代 ...
- html分页
<div class="fy"> <a href="" title="上一页">上一页</a> < ...
- jQuery.ajax()的一些例子
例子: Example: 保存数据到服务器,成功时显示信息. 1 2 3 4 5 6 7 $.ajax({ method: "POST", url: "some.php& ...
- 整理sed实战修改多行配置技巧
老男孩老师有关sed实战技巧分享,来自课堂教学内容实战1.在指定行前插入两行内容,分别为oldboy和oldgirl.提示:被修改的文件内容必须要大于等于2行 1 sed -i '2 ioldboy\ ...
- 创建Mysql
CREATE DATABASE IF NOT EXISTS yiya DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
- Oracle登陆及修改用户密码
16:20 2013/7/7 Oracle 登陆 管理员登陆 sqlplus sys/root as sysdba (密码认证)这个root是安装数据库最初你输入的口令 sqlplus /as ...
- objective-c常用数学方法
1. 三角函数 double sin (double);正弦 double cos (double);余弦 double tan (double);正切 2 .反三角函数 double as ...
- centos 卸载vsftpd方法
centos 卸载vsftpd方法 在服务器上安装了vsftpd,配置出错需要卸载vsftpd.卸载vsftpd的命令如下: 1 [root@localhost ~]# rpm -aq vsftpd2 ...
- js点击图片显示在左边大图
<div class="imgbox cf"> <img src="temp/pic2.jpg" alt="" cl ...