[Ruby]ruby笔记02

Ruby数据类型

  1. 数字

    • 整数型(1,0,100,1e3)
    • 浮点型(2.5,7.0,0.99,1.1e3)
    • 数字前可以有前缀0表示8进制,0x表示十六进制,0b表示8进制
  2. 字符串

    字符串写在单引号' '、双引号" "之间
    
  3. 数组
    下标从0开始,数组的每个元素可以是不同的类型:
    arrayA=[1,2.5,”hello world”,[a,b,c],78]
  4. 哈希表
    month={
    “Jan”=>1,”Feb”=>2,”Mar”=>3,”Apr”=>4,”May”=>5,”Jun”=>6,”Jul “=>7,”Aug”=>8,”Sep”=>9,”Oct”=>10,”Nov”=>11,”Dec”=>12
    }

  5. 区间
    1..5表示1,2,3,4,5
    1…表示1,2,3,4

  6. 正则表达式

赋值和条件表达式

a=1,b=2;
b=2+3
a=b=1+2+3 #a=b=6
a=(b=1+2)+3 #a=6,b=3
x=0 a,b,c=x,(x+2),(x+3) #a=0 b=2 c=3

==(等于)
!=(不等于)
比较两个对象的值是否相等.
a=1;b=1.0; a=b;#true
eql? 比较两个对象的值、类型是否相等;返true、false
a=1;b=1.0;a.eql?(b)#false
equal? 比较两个对象在内存中地址是否相等
a=1.0;b=1.0;a.equal?b #false
a=1.0; b=a; a.equal?b #true
<=> 比较两个对象的大小,大于、等于、小于分别返回1,0,-1
”aac”<=>”abc”#-1
[5]<=>[4,9] #1
=== 右边的对象是否在左边的区间之内,返回true,false
puts (0..9)===3.14
=~匹配 用来比较是否符合一个正则表达式,返回模式在字符串中被匹配到的位置,否则返回nil
< >= > <= 小于 大于等于 大于 小于等于

条件判断语句

  1. if 、else语句

    • 单条件 if 条件1 then 语句1,语句2… end
    • 多条件

      if 条件1
      语句1;语句2;语句…
      elsif
      语句1;语句2;语句…
      else
      语句1;语句2;语句。。。
      end

    • unless
      unless 条件1 语句1; else 语句2; end
      unless后条件1为假执行语句1,否则执行语句2.
x=1


if x<7 then puts "x小于7"

if x>2
     puts "x is greater than 2"
elsif x<=2 and x!=0
   puts "x is 1"
else
     puts "I can't guess the number"
end


unless x>3
      puts "x小于等于3"
else
      puts "x大于3"

case条件分支语句

case 对象
when 可能性1
         语句1;
when 可能性2
         语句2;
when 可能性…
         语句3;
else
         语句…
end

循环语句

  1. while循环
    while 条件>
         循环体
    end
#循环输出1-10

while x<=10
     puts x
     x=x+1
end

你可能感兴趣的:(Ruby)