001 |
#coding:utf-8 |
002 |
#熟悉ruby基本数据类型 |
003 |
004 |
005 |
class Ruby01
|
006 |
puts "基本数字类型"
|
007 |
puts 1
|
008 |
puts 1 . 0
|
009 |
puts 1 . class #输出Fixnum
|
010 |
puts 1 . 0 . class #输出Float
|
011 |
puts 1 . 0 . class . class #输出Class
|
012 |
|
013 |
puts
|
014 |
puts "算数基本操作"
|
015 |
puts 4 / 2
|
016 |
puts 4 / 2 . 0
|
017 |
puts 4 . 0 / 2 . 0
|
018 |
puts 4 * 2
|
019 |
puts 4 ** 2
|
020 |
puts 4 % 2
|
021 |
|
022 |
puts
|
023 |
puts "文本"
|
024 |
puts '这是第一个ruby程序' \
|
025 |
'使用单引号可以跨越多行'
|
026 |
puts "双引号使用"
|
027 |
puts "4/2=#{4/2}" #双引号中可以使用变量和表达式,单引号下不行,会当做字符串输出
|
028 |
puts "圆周率是%.4f" %Math:: PI #相当于 printf"圆周率是%.4f"%Math::PI
|
029 |
|
030 |
puts
|
031 |
puts "访问字符串和子字符串"
|
032 |
s= "hello"
|
033 |
puts s[ 0 ]
|
034 |
puts s[s.length()- 1 ]
|
035 |
puts s[- 1 ]
|
036 |
puts s[- 2 ]
|
037 |
puts s[-s.length()]
|
038 |
puts s[s.length()]
|
039 |
puts s[s.length()]. class #输出NilClass
|
040 |
|
041 |
puts
|
042 |
puts s[ 0 , 3 ]
|
043 |
puts s[- 3 , 5 ]
|
044 |
puts s[ 0 ,- 2 ]. class
|
045 |
puts s[ 2 .. 4 ]
|
046 |
|
047 |
|
048 |
puts
|
049 |
s[s.length(), 0 ]= "world"
|
050 |
puts s
|
051 |
s[ 5 , 0 ]= ","
|
052 |
puts s
|
053 |
s[ 5 , 5 ]= ""
|
054 |
puts s
|
055 |
|
056 |
puts
|
057 |
s= "字符串迭代"
|
058 |
puts s
|
059 |
s.each_char{|x| print "#{x}-" }
|
060 |
|
061 |
#数组
|
062 |
= begin
|
063 |
ruby中数组用逗号分割元素
|
064 |
数组下标从 0 开始
|
065 |
[]数组长度为 0
|
066 |
each 方法可以遍历一个数组
|
067 |
= end
|
068 |
puts
|
069 |
puts "数组"
|
070 |
arr =[ 1 , 2 , 3 ];arr. each { |x|print "#{x}," };
|
071 |
puts
|
072 |
arr =[- 10 ... 0 , 0 .. 10 ,]
|
073 |
puts "arr数组第一个元素为数组" ;arr[ 0 ]. each {|x|print "#{x}," };
|
074 |
puts "arr数组第二个元素为数组" ;arr[ 1 ]. each {|x|print "#{x}-" };
|
075 |
|
076 |
|
077 |
|
078 |
puts
|
079 |
puts "数组创建"
|
080 |
puts "empty=Array.new():#{Array.new()}"
|
081 |
puts "nils=Array.new(3):#{Array.new(3)}"
|
082 |
puts "0=Array.new(4,0):#{Array.new(4,0)}"
|
083 |
puts "copy=Array.new(nils):#{Array.new(arr)}" #数组拷贝
|
084 |
puts "count =Array.new(3):#{Array.new(3){|x| x+1}}" #元素索引填充数组
|
085 |
|
086 |
|
087 |
|
088 |
puts
|
089 |
puts "数组运算"
|
090 |
= begin
|
091 |
ruby中是可变数组
|
092 |
>>可以给数组添加数据
|
093 |
>>可以添加多条数据
|
094 |
|取合集
|
095 |
&取交集
|
096 |
= end
|
097 |
arr0=[]
|
098 |
arr0<< 1
|
099 |
arr0<< 2 << 3
|
100 |
|
101 |
puts "#{arr0}"
|
102 |
arr0<<[ 4 , 5 , 6 ]
|
103 |
puts "#{arr0}"
|
104 |
arr1=[ 1 , 3 , 2 , 5 , 4 ]
|
105 |
arr2 =[ 2 , 3 ]
|
106 |
puts "取并集:{arr1 | arr2}-->#{arr1|arr2}"
|
107 |
puts "取并集:{arr2 | arr1}-->#{arr2|arr1}"
|
108 |
puts "取交集:{arr1 & arr2}-->#{arr1&arr2}"
|
109 |
puts "取交集:{arr2 & arr1}-->#{arr2&arr1}"
|
110 |
|
111 |
#对象
|
112 |
= begin
|
113 |
equal比较对象
|
114 |
eql比较对象值
|
115 |
==比较值
|
116 |
|取合集
|
117 |
&取交集
|
118 |
object_id用来比较是否是同一个对象
|
119 |
|
120 |
= end
|
121 |
puts
|
122 |
puts "对象比较"
|
123 |
obj1= "ruby"
|
124 |
obj2=obj3= "ruby"
|
125 |
|
126 |
puts obj1.equal?(obj2)
|
127 |
puts obj2.equal?(obj3)
|
128 |
puts obj1.eql?(obj2)
|
129 |
puts obj2.eql?(obj3)
|
130 |
puts "obj1的obj1.object_id=#{obj1.object_id},obj2的obj2.object_id=#{obj2.object_id},obj3的obj3.object_id=#{obj3.object_id}"
|
131 |
puts 1 == 1 . 0 #==比较,可以进行值转换
|
132 |
puts 1 .eql?( 1 . 0 ) #eql比较,不能进行值转换
|
133 |
puts "0==nil:#{0==nil}" #判断是否为 nil 另一种方法 0 . nil ?
|
134 |
= begin
|
135 |
to_i,to_f,to_s用来转换成 Integer ,Float,string类型
|
136 |
= end
|
137 |
puts
|
138 |
puts "类型转换"
|
139 |
s1= 1
|
140 |
puts "s1是:#{s1.class}"
|
141 |
s2= "1"
|
142 |
puts "s2是:#{s2.class}"
|
143 |
s3= 1 . 0
|
144 |
puts "s3是:#{s3.class}"
|
145 |
s4=s1.to_s()
|
146 |
puts "s4是:#{s4.class}"
|
147 |
s5=s2.to_i()
|
148 |
puts "s5是:#{s5.class}"
|
149 |
puts "s2==s4:#{s2==s4}"
|
150 |
puts "s1==s5:#{s1==s5}"
|
151 |
|
152 |
|
153 |
|
154 |
155 |
end |
156 |
#new()创建对象 |
157 |
e =Example01. new ();
|
158 |
159 |
print e |
相关推荐
机电技术管理资料备查制度-安全管理-安全管理制度-机械安全.docx
自留备查-《计及资源……》——资源禀赋指标赋权
\进程备查手册\进\进程备查手册\进程备查手册程备查手册
标准电阻值表:电阻精度与常用阻值,供大家设计时参考.
参考资料-监理单位管理人员签名笔迹备查表GDAQ4301.zip
参考资料-专业分包单位安全生产管理人员签名笔迹备查表GDAQ20108.zip
水利工程监理平行检测备查表.pdf
Excel表格+Word文档各类各行业模板-出口收汇核销备查.zip
备查目录
用友培训课件:U9V2 8组件化实施方案实例指导_GL-020科目备查.ppt
编程备查ASPNET编译执行常见错误及解决方法53条汇总[总结].pdf
TH-F6, F7维修手册,用于分拆、修理建武TH-F6, F7时使用
vba电子发票登记工作簿,右击弹出常用报销事项或报销人姓名
用友nc环境备查手册
参考资料-施工总承包单位安全生产管理人员签名笔迹备查表GDAQ20107.zip
档案备查索引表
MYSQL 常用函数备查,方便查找,下载后需要用word2007打开。
ASCII码表,备查。ASCII码表,备查。ASCII码表,备查
某某大学校级公章用印备查单.pdf
某某大学校级公章用印备查单.docx