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 |
相关推荐
3. **精度要求**:高精度电路(如精密测量仪器)应选用E-96系列的1%精度电阻,以确保测量准确性。 #### 五、结论 标准电阻值表是电路设计中不可或缺的工具,它不仅提供了不同精度等级的电阻阻值,还帮助工程师根据...
自留备查-《计及资源……》——资源禀赋指标赋权
\进程备查手册\进\进程备查手册\进程备查手册程备查手册
机电技术管理资料备查制度是确保矿山电气安全管理的重要组成部分,其目标是预防事故的发生,提高安全管理水平。这一制度要求机电管理人员全面了解矿井供电系统的运行状态,并掌握所有设备的动态,以便于提前发现潜在...
标题提到的"参考资料-监理单位管理人员签名笔迹备查表GDAQ4301.zip"是一个与工程监理相关的压缩文件,它包含了监理单位管理人员的签名样本,用于核实和确认他们在不同文件上的签名真实性。这个"备查表"是项目管理中...
《水利工程监理平行检测备查表》是水利工程建设过程中的一个重要工具,主要用于确保工程质量的把控。在水利水电工程的施工过程中,监理单位会进行平行检测,即独立于施工单位的质量检查,以保证工程的质量达到设计和...
而科目备查则能在凭证上仅用一行记录总金额,通过备查字段来详细记载各个销售员的借款信息,减少了凭证的复杂性,提高了工作效率。 科目备查的实施涉及到以下几个关键点: 1. **控制方式**:分为备查和核销两种。...
### 用友NC环境备查手册关键知识点解析 #### 一、NCV5安装手册核心内容 ##### 1. 安装WebSphere Application Server (WAS) 6.1 - **启动安装程序**:首先启动WAS安装程序,进入安装界面。 - **指定安装路径**:...
- **移除继电器端子**:使用螺丝刀插入继电器端子与其支架之间,轻轻拉动以移除端子。 - **组装继电器锁扣**:在继电器锁扣上放置一个弹簧,再插入一根轴,然后将整个组件安装到后面板上。 #### 五、结论 通过本...
这个文件可能是为了确保安全规定得到严格执行,防止假冒或未经授权的签名,以保障工程的安全与合规性。 首先,我们要理解“专业分包单位”在IT与建筑工程中的角色。在大型项目中,尤其是涉及到复杂技术和专业领域的...
Excel表格+Word文档各类各行业模板-出口收汇核销备查.zip
出纳备查账簿在企业财务管理中扮演着重要的角色,它是对日记账和分类账记录的补充,确保会计信息的完整性和准确性。备查账簿主要用于记录那些在主要账簿中无法完全体现或者未被记录的经济活动。通过设立出纳备查账簿...
备查目录
本文将深入解析标题为“vi常用命令整理可以备查”中提及的各项功能与操作,帮助读者全面掌握VI编辑器的使用技巧。 #### 一、基本移动命令 - **`h`**: 向左移动一个字符。 - **`j`**: 向下移动一行。 - **`k`**: ...
### 疫苗流通和使用环节质量安全专项整治工作总结 #### 一、检查重点 **(一)疾病预防控制机构** 1. **管理制度与人员配置:** - 建立健全疫苗管理制度,确保专兼职人员负责疫苗管理工作,并接受相关业务培训。...
"参考资料-施工总承包单位安全生产管理人员签名笔迹备查表GDAQ20107.zip" 提供的压缩文件包含了一份名为 "施工总承包单位安全生产管理人员签名笔迹备查表GDAQ20107.xls" 的Excel表格,这是一份用于记录和管理施工总...
vba电子发票登记工作簿,右击弹出常用报销事项或报销人姓名
备查材料应包括学校发展规划、年度计划和总结、改革方案、学生就业数据及服务经济发展资料等,以证明学校在质量与内涵发展上的重视。 2. **办学行为**:这涉及政策法规执行、纪律规范和行为标准。学校需提供遵守...
- 每月例会:由站长主持,全体成员参加,讨论任务完成情况、思想教育、经验总结、工作布置等。 - 会议记录:设专门记录本,站员不得无故缺席,记录存档备查。 4. **交接班制度** - 交接内容:包括工作交接、器材...
【海口市海港学校基础工程监理工作总结】 这篇文档是关于海口市海港学校基础工程的监理工作的总结,涵盖了工程概述、监理工作制度以及监理工作的具体实施情况。以下是详细的知识点解析: 1. 工程概况: - 该工程...