加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

基本数据类型和对象

发布时间:2020-12-17 04:11:36 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 # coding: utf-8#Example01:学习数据类型和对象#@author yongtreeclass Example01 #基本的数字类型,和java差不多,但是不同的是都是对象 puts "基本

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

# coding: utf-8
#Example01:学习数据类型和对象
#@author yongtree
class Example01
  #基本的数字类型,和java差不多,但是不同的是都是对象
  puts "基本数字类型"
  puts 1
  puts 1.0
  puts 1.class
  puts 1.0.class

  #基本算数操作
  puts
  puts "基本算数操作"
  puts 4/2
  puts 4/2.0
  puts 4%2
  puts 4+2
  puts 4*2
  puts 4**2

  #文本
  puts
  puts '第一个ruby程序'

  '单引号的使用:'

  '使用单引号可以跨越多行'
  puts "双引号的使用"
  puts "4/2=#{4/2}" #双引号中可以包含变量或者表达式,但是单引号下不行,会当成字符串输出
  puts "圆周率是%.4f" % Math::PI    #类似于
  #printf ("圆周率是%.4f" % Math::PI)

  puts
  puts "访问字符串和子字符串"
  s="hello"
  puts s[0]
  puts s[s.length-1]
  puts s[-1]
  puts s[-2]
  puts s[-s.length]
  puts s[s.length].class #返回nil

  puts
  puts s[0,3]
  puts s[-3,5]  #-3-->0
  puts s[0,-2].class   #长度不是是负值
  puts s[2..4]

  puts
  s[s.length,0]="world"
  puts s
  s[5,0]=","
  puts s
  s[5,5]=""
  puts s

  puts
  s="字符串迭代"
  puts s
  s.each_char{|x| print "#{x}-"}

  #数组
  puts
  puts
  puts "数组"
  arr = [1,2,3];arr.each { |x| print "#{x},"}
  puts
  arr = [-10...0,0..10,]
  puts "arr第一个元素为数组,打印:";arr[0].each { |x| print "#{x},"};
  puts
  puts "arr第二个元素为数组,打印:";arr[1].each { |x| print "#{x},"};
  puts
  puts
  puts "数组创建"
  puts "empty=Array.new:#{Array.new}"
  puts "nils=Array.new:#{Array.new(3)}"
  puts "zeros=Array.new:#{Array.new(4,0)}"
  puts "copy=Array.new:#{Array.new(arr)}"
  puts "count=Array.new:#{Array.new(3){|x| x+1}}"

  puts
  puts "数组运算"
  arr0=[]
  arr0<<1
  puts "#{arr0}"
  arr0<<2<<3
  puts "#{arr0}"
  arr0<<[4,5,6]
  puts "#{arr0}"
  arr1=[1,3,4]
  arr2=[2,3]
  puts "取并集:(arr1 | arr2)-->#{arr1|arr2}"
  puts "取并集:(arr2 | arr1)-->#{arr2|arr1}"
  puts "取交集:(arr1 & arr2)-->#{arr1&arr2}"
  puts "取交集:(arr2 & arr1)-->#{arr2&arr1}"

  #对象
  puts
  puts "对象比较"
  obj1="Ruby"
  obj2=obj3="Ruby"
  puts obj1.equal?(obj2) #比较对象  false
  puts obj2.equal?(obj3)             #true
  puts obj1.eql?(obj2)  #比较值    true
  puts obj1==obj2       #比较值   true
  puts "obj1的object_id=#{obj1.object_id},obj2的object_id=#{obj2.object_id},obj3的object_id=#{obj3.object_id}"        #可以通过比较对象的object_id来判断是不是一个对象

  puts 1==1.0      #==比较,值可以转换  true
  puts 1.eql?(1.0) #不能进行值转换      false


end

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读