清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | #coding:utf-8 #熟悉ruby基本数据类型 class Ruby01 puts "基本数字类型" puts 1 puts 1 . 0 puts 1 . class #输出Fixnum puts 1 . 0 . class #输出Float puts 1 . 0 . class . class #输出Class puts puts "算数基本操作" puts 4 / 2 puts 4 / 2 . 0 puts 4 . 0 / 2 . 0 puts 4 * 2 puts 4 ** 2 puts 4 % 2 puts 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()] puts s[s.length()]. class #输出NilClass puts puts s[ 0 , 3 ] puts s[- 3 , 5 ] 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}-" } #数组 = begin ruby中数组用逗号分割元素 数组下标从 0 开始 []数组长度为 0 each 方法可以遍历一个数组 = end 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 "arr数组第二个元素为数组" ;arr[ 1 ]. each {|x|print "#{x}-" }; puts puts "数组创建" puts "empty=Array.new():#{Array.new()}" puts "nils=Array.new(3):#{Array.new(3)}" puts "0=Array.new(4,0):#{Array.new(4,0)}" puts "copy=Array.new(nils):#{Array.new(arr)}" #数组拷贝 puts "count =Array.new(3):#{Array.new(3){|x| x+1}}" #元素索引填充数组 puts puts "数组运算" = begin ruby中是可变数组 >>可以给数组添加数据 >>可以添加多条数据 |取合集 &取交集 = end arr0=[] arr0<< 1 arr0<< 2 << 3 puts "#{arr0}" arr0<<[ 4 , 5 , 6 ] puts "#{arr0}" arr1=[ 1 , 3 , 2 , 5 , 4 ] arr2 =[ 2 , 3 ] puts "取并集:{arr1 | arr2}-->#{arr1|arr2}" puts "取并集:{arr2 | arr1}-->#{arr2|arr1}" puts "取交集:{arr1 & arr2}-->#{arr1&arr2}" puts "取交集:{arr2 & arr1}-->#{arr2&arr1}" #对象 = begin equal比较对象 eql比较对象值 ==比较值 |取合集 &取交集 object_id用来比较是否是同一个对象 = end puts puts "对象比较" obj1= "ruby" obj2=obj3= "ruby" puts obj1.equal?(obj2) puts obj2.equal?(obj3) puts obj1.eql?(obj2) puts obj2.eql?(obj3) puts "obj1的obj1.object_id=#{obj1.object_id},obj2的obj2.object_id=#{obj2.object_id},obj3的obj3.object_id=#{obj3.object_id}" puts 1 == 1 . 0 #==比较,可以进行值转换 puts 1 .eql?( 1 . 0 ) #eql比较,不能进行值转换 puts "0==nil:#{0==nil}" #判断是否为 nil 另一种方法 0 . nil ? = begin to_i,to_f,to_s用来转换成 Integer ,Float,string类型 = end puts puts "类型转换" s1= 1 puts "s1是:#{s1.class}" s2= "1" puts "s2是:#{s2.class}" s3= 1 . 0 puts "s3是:#{s3.class}" s4=s1.to_s() puts "s4是:#{s4.class}" s5=s2.to_i() puts "s5是:#{s5.class}" puts "s2==s4:#{s2==s4}" puts "s1==s5:#{s1==s5}" end #new()创建对象 e =Example01. new (); print e |