设为首页 加入收藏

TOP

Ruby知识总结-一般变量+操作符+if+数组和哈希(一)
2019-08-15 00:10:34 】 浏览:341
Tags:Ruby 知识 总结 一般 变量 操作 哈希

ruby入门掌握其实很简单,下面对我司主要使用的部分入门做一个简单的归纳总结:
本文的文章结构:
1、变量
2、操作符
3、if~else~end 、unless
4、数组(Array)
5、哈希(Hash)
6、循环(each do|变量|)

                                                                                                                                                                             1、变量

变量分为:整数型(int);浮点型(float);布尔型(bool);字符串型(string)

int型:1,2,3
float型:1.2
bool型:true/ false
string型:"abc"

不同类型间的转换:
.to_f :转为浮点型
.to_s:转为字符串型
例如
p 123.to_s
=>"123"

变量分为:全局变量($),局部变量和类变量(@@),它们的作用范围由大到小排列

                                                                                                                                                                                  2、对于变量而言含有的操作符

对于int和float,为倍数相乘,但是对于字符串,即为重复几次,例如:
str1 = "a"
p str1
3
=>"aaa"
对于字符串,+也有特殊意义,为字符串间的简单拼接
②|| 或(一真全真)、&&且(一假全假) 、!非 (特别注意 nil为假)
③三目操作符:
口?口:口 问号前面的是布尔型的判断,true的话执行第二个方块的语句,false的话执行第三个方块的语句
例如:
value =(nil ? 0 : 1)
p value
=>1
⑤== 表示判断,两侧是否相等,相等为true,不相等为false
3、if语句的基本知识
if ~else~end 不要丢掉end哦!!!
例如:
num = 100
if num <100
p "数字小于100"
elsif num >100 #elsif 后面还是可以加判断条件的
p "数字大于100"
else #else 就是指其他的,后面不能再加判断条件
p "数字等于100"
end

=> "数字等于100"

if还能这样用:
num = 100
p "数字等于100" if num =100 #if后面的判断为真后,再去执行前面的语句
=> "数字等于100"

与if一样同为判断的还有一个方式:unless 用法就是unless后面的条件不成立,才会执行下一条语句,否则就跳到下一个判断,因为逻辑比较绕,所以一般多于1个判断的时候,就直接用if好了。

例如:
num = 50
p "数字小于100" unless num>100

                                                                                                                                                                                4、数组的基础知识及方法

数组(Array)
创建一个新的数组可以这样:arr = Array.new ,或者直接定义一个空的数组 :arr = [ ],这个中括号就是数组的标志。
①最重要的知识点就是 索引,就是数组所在的位置,它是有序的,在物理磁盘按照顺序存储,它跟python一样,都是从0开始计数
arr = [1,2,3,4,5]
p arr[0]
=>"1" #拿出来一个元素,不是数组哦
p arr[-1] #取倒数第一个元素
=>"5"
②数组内的操作符:
加号(+)单纯的将两个数组连接,不做去重;
减号(-)用前一个数组减去后一个数组里的东西,只对被减数做修改;
取并集“|”(可以看到,比对于变量的操作,少了一个竖杠);
取交集“&”(可以看到,比对于变量的操作,少了一个&);
数组间的拼接: “<<” 这个字符的意思是拼接,并不是将两个数组简单的拼接起来,这跟字符串中的用法不一样,它是把箭头后面的元素作为一个新的元素加到左边的数组里面去。
例如:
数组1 = ['1','2','3']
数组2 = ['1','3','4']
p 数组1 - 数组2
=>["2"]
p 数组1 + 数组2
=>["1", "2", "3", "1", "3", "4"]
p 数组1 | 数组2 #数组里的取并集,是一个竖杠"|",而变量里面是"||"
=>["1", "2", "3", "4"]
p 数组1 & 数组2 #你看,数组里的取交集,是一个&
=>["1", "3"]

例如:
p ['1','2','3']<<["aaa"]
=> ['1','2','3',['aaa']]

方法:
.empty? #判断是否为空,输出结果为布尔型
a = ["a","b","c"]
p a.empty?
=>false

.include?("变量") #判断是否含有某元素,输出结果为布尔型
a = ["a","b","c"]
p a.include?("c")
=>true

.index("元素") #寻找某个元素的索引
a = ["a","b","c"]
p a.index("c")
=>2

.size #查询数组的长度
a = ["a","b","c"]
p a.size
=>3

                                                                                                                                                                            5、哈希的基础知识和方法

创建一个新的哈希可以这样:hash = Hash.new ,或者直接定义一个空的哈希 :hash = {},这个中括号就是哈希的标志。
哈希是以键值对的形式存在的,表达方式有2种,我司常用的是{“a”=>“b”}形式,一个key可对应多个value,它们是在物理地址是不连续的,所以没有索引的说法,而是通过key去查找对应的value,效率会高于数组。这个哈希其实就相当于python里的字典。
所以定位哈希的时候,是用key去定位的,hash[key ],例如:
hash= {"a"=>"b","c"=>"d"}
p hash["c"]
=>"d"

下面简列一下hash的方法:
empty? #判断是否为空,输出结果为布尔型
a = {}
p a.empty?
=>true

.include?("value") #判断是否含有某元素,输出结果为布尔型
hash= {"a"=>"b","c"=>"d"}
p hash.include?("f")
=>true

.size #查询哈希的个数,记住,是以键(keys)为标准
hash= {"a"=>"b","c"=>"d"}
p hash.size
p=>2

.keys #这个方法是将哈希里的

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇RubyGems系列之创建自己的gem 下一篇Cannot set HTTP gem source: “s..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目