Ruby语言基础学习一:Ruby语法和数据类型

来源:互联网 发布:619什么意思网络用语 编辑:程序博客网 时间:2024/05/21 23:01

本文参考了教程:http://www.runoob.com/ruby/ruby-syntax.html

Ruby语法和Python相似,都是对格式比较严格的。

我用的是sublime3.0进行编辑的,气质Ctrl+s用于保存文件,Ctrl+b用于执行文件,很方便使用,其他方法请参考上述教程。

所有的 Ruby 文件扩展名都是 .rb

Ruby程序很变态哦!非常重视格式。错一点点都不能运行,这也说明学变成是用手,用手,用手,七分手二分脑!

# -*- coding : utf-8 -*-# 所有的 Ruby 文件扩展名都是 .rb。# 如果 Ruby 在行尾遇到运算符,比如 +、- 或反斜杠,它们表示一个语句的延续。# 该有空格的必须要有,不该有空格的地方坚决不能有,这个需要非常关注,只是变态语言print <<EOF    这是第一种方式创建here document 。    多行字符串。EOFprint <<"EOF";                # 与上面相同    这是第二种方式创建here document 。    多行字符串。EOF#下面这人一个结构只能运行上面一行代码,下面哪行运行不了。print <<`EOC`                 # 执行命令echo hi thereecho lo thereEOC#注意这里的格式非常非常严格,print <<中间一定要有空格,", <<"bar"中间也一定要有空格print <<"foo", <<"bar"      # 您可以把它们进行堆叠I said foo.fooI said bar.barBEGIN{puts "声明 code 会在程序运行之前被调用" #注意这是puts,得注意命令}END{puts "声明 code 会在程序的结尾被调用。"}=begin这个是多行注释你看看很方便啊!=end #数值类型123                  # Fixnum 十进制1_234                # Fixnum 带有下划线的十进制-500                 # 负的 Fixnum0377                 # 八进制octal0xff                 # 十六进制0b1011               # 二进制"a".ord              # "a" 的字符编码?\n                  # 换行符(0x0a)的编码12345678901234567890 # Bignum#整型 Integer 以下是一些整型字面量 #字面量(literal):代码中能见到的值,数值,bool值,字符串等都叫字面量 #如以下的0,1_000_000,0xa等 a1=0 #带千分符的整型 a2=1_000_000 #其它进制的表示 a3=0xa puts a1,a2 puts a3 #puts print 都是向控制台打印字符,其中puts带回车换行符 # Ruby 支持浮点数。它们是带有小数的数字。浮点数是类 Float 的对象,且可以是下列中任意一个。# 加减乘除操作符:+-*/;指数操作符为** puts 2**(1/4); #1与4的商为0,然后2的0次方为1 puts 'escape using "\\"';puts 'that\'s right';#因为这个'如果不加\的话就和前面的东西结成对了puts "Multiplication Value:#{24*60*60}";#这一点非常好,为了将计算的数值输出到屏幕,使之更好用不用%dname="Ruby";puts name #可以有分号,也可以没有puts "#{name+",OK"}";# 数组=begin(1)数组通过[]索引访问 (2)通过赋值操作插入、删除、替换元素(3)通过+,-号进行合并和删除元素,且集合做为新集合出现(4)通过<<号向原数据追加元素(5)通过*号重复数组元素(6)通过|和&符号做并集和交集操作(注意顺序)=endary=["fred",10,3.14,"This is a string","last element"];ary.each do |i| #这个很特别不是吗?puts iend# 哈希类型# Ruby 哈希是在大括号内放置一系列键/值对,键和值之间使用逗号和序列 => 分隔。尾部的逗号会被忽略。hsh=colors={"red"=>0xf00,"green"=>0x0f0,"blue"=>0x00f}hsh.each do |key,value|print key," is ",value,"\n"end=begin范围类型一个范围表示一个区间。 范围是通过设置一个开始值和一个结束值来表示。范围可使用 s..e 和 s...e 来构造,或者通过 Range.new 来构造。使用 .. 构造的范围从开始值运行到结束值(包含结束值)。使用 ... 构造的范围从开始值运行到结束值(不包含结束值)。当作为一个迭代器使用时,范围会返回序列中的每个值。范围 (1..5) 意味着它包含值 1, 2, 3, 4, 5,范围 (1...5) 意味着它包含值 1, 2, 3, 4 。=end(10...15).each do|n|print n,''endputs"任性,居然可以这样,少一个点。两个点少了一个数字"(10..15).each do|n|print n,''end


0 0