[ruby]ruby基本数据类型和流程控制

版权声明:本文为博主原创文章,未经博主允许禁止转载(http://blog.csdn.net/napoay) https://blog.csdn.net/napoay/article/details/50331573

一切都是对象

Ruby支持常见的数据类型:定点整数(Fixnum)、浮点数(Float)、字符类型(string)、线性数组(Array)、哈希表(Hash).变量的类型知道运行时才能推理出来。比如定义语句s=”abcd”后还可以定义s=4.Ruby种的对象都是基于直接调用方法的操作来实现的.

puts 2.class
puts "str".class
puts "12.3".class
puts 12.3.class
puts [1,2,3].class
puts "abcd".upcase

输出:

Fixnum
String
String
Float
Array
ABCD

整型

任何整数都是Fixnum对象

2**3         #2的3次方     8
2**0.5       #2的1/2次方    1.4142135623730951
2**-1        #2的-1次方    1/2
3<<5         #3左移5位      3乘以2的5次方
160>>5       #168右移5位    168除以2的5次方取整

1==2false
1==1.0     #true
5<=>6      #-1   a<=>b a<b返回-1,a等于b返回0,a>b返回1

浮点数

浮点数四则运算:

puts 1+2.0
puts 5.0-9.0
puts 4.0/3
puts 3.1*2.2
输出:
3.0
-4.0
1.3333333333333333
6.820000000000001

字符串

puts "hello ruby"

name="Jack"
puts "hello #{name}"

3.times do 
     puts "Ruby Rocks"
end

var1="sports"
var2="happy"
var3="RubyOnRails"

puts var1.length
puts var1.reverse
puts var2.upcase
puts var3.downcase

输出:
hello ruby
hello Jack
Ruby Rocks
Ruby Rocks
Ruby Rocks
strops
HAPPY
rubyonrails

类型转换

to_s:转换成字符串
to_i: 转换成整数
to_f: 转换成浮点数

puts "12"+12.to_s   #1212
puts "12".to_i+12   #24
puts 9/2            #4
puts 9.to_f/2       #4.5

变量和常数

小写单词开始的为一般变量(不能为关键字)

#小写开头的为变量
composer="Mozart"
puts composer + ' was "da bomb", in his day.'

大写开头的为常数

Foo=1
puts Foo
Foo=2 #ruby01.rb:59: warning: already initialized constant Foo 不能再赋值
阅读更多

扫码向博主提问

mydpp

博客专家

熟悉Lucene、ES、ELK
去开通我的Chat快问
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页