




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Ruby笔记Ruby里require,load和include区别:1、requre,load用于文件,如.rb等等结尾的文件。2、include则用于包含一个文件(.rb等结尾的文件)中的模块。3、requre一般情况下用于加载库文件,而load则用于加载配置文件。4、requre加载一次,load可加载多次。“require”和 “load”用途是一致的, 用来载入新的程式库,“include”是用来 mix-in 模组。require可载入某个 a.rb 档案, 且可以省略 ”.rb”. 而且它只会在第一次的时候载入, 若再次require时就会忽略。require aa = A.newload和require一样但要用 a.rb 全名, 且每次一定会重新载入。load a.rba = A.newinclude用来mix-in某个模组, 可以減少书写的长度。require webrickinclude WEBrick/可以不用 server = WEBrick:HTTPServer.new(.)用server = HTTPServer.new(.)如果说abc.rb中包含一个模块Ma,和几个类Ca,Cb等等。那么你若想在ef.rb文件中使用abc.rb中的资源,你得这样:require abc.rb 若还想在ef.rb的某个类中使用abc.rb中的模块,则应在这个类中加入include Ma如果你只想在ef.rb文件的某个类中使用abc.rb的模块,你得这样:require abc.rbinclude MaRuby里p , puts和print区别:在rails开发中,最基本的检测错误的方法,莫过于puts和p的输出了。p和print一样。查询数据库中一条数据记录集, p把数据库中的字段和值都输出 了,puts 只输出一个对象的标识。代码例子:post = BlogPost.find(params:id) p post puts post代码例子:class SomeClass def initialize (arg_1, arg_2) # called with SomeClass.new member_1 = arg_1 member_2 = arg_2 end def print puts member_1: + member_1 puts member_2: + member_2 endendsc1 = SomeClass.new(foo, bar)puts sc1.inspectp sc1puts sc1字符串:(1)建立空字符串:代码例子:puts String.newputs String.new(123)b=abcp bputs b输出如下:(空白行)123abcabc(2)判断一个字符串是否为空puts .empty? 输出trueputs 123.empty? 输出false(3)输出字符串的长度puts phper.yang.length #10puts phper.yang.size #10(4)输出文本t = pphprubypythonpputs t输出phprubypython(5)字符串链接puts hello, ruby phper.yangputs hello, + ruby phper.yangputs hello, ruby phper.yangputs hello, .concat ruby phper.yang(6)字符串截取用法(位置从0开始)ttt = hello ruby,phper.yangputs ttt8 #98puts ttt8.chr #bputs ttt8,15 #by, phper.yangputs ttt8,15.capitalize #By,phper.yangputs ttt0.8 #hello ruputs ttt/ruby/ #rubyputs ttt.index(r) #6 取第一次出现位置puts tttttt.index(y) #121puts tttttt.index(y).chr #y(7)字符串比较puts s1.eql?s2 #true false(8)字符串累加输出puts g,hm * 3 # g,hm g,hm g,hm(9)在某一个字符串中在插入字符串puts ruby .insert 5, php # ruby php 第5个位置处插入(10)替换某部分字符串tt = ruby,php,javattjava = pythonputs tt # ruby,php,python(11)去掉字符chop、chop!会去掉字符串最后的一个字符。chomp、chmop!则从字符串中摘除行尾的分隔符。通常是换行符。(12)从字符串中删除某个字段ttt = java,python,ruby,php,aspputs tttputs ttt.delete ,(13)字符串的替换puts s1.replace python(14)反转字符串puts s1.reverse(15)字符串转数组i = phpruby.split( / )i.each do |v|puts vputs -end(16)数组转字符串:sz = php,ruby,pythonputs sz.join() # phprubypython 随意啥都行(17)遍历字符串ruby.each_byte |v| print v,/ (18)字符串的大小写转换t = PHPputs t.downcaseputs t.capitalizeputs t.upcasett = php RuByputs tt.swapcase(19)强制转换200.to_s #”250” 有数字转换为字符串。(20)正则表达式过滤 grep方法。该方法不是String的方法。tt = python,java,php, rubyputs tt.grep(/php/);(21)过滤字符串gsub!()info = PublishInfo.find_by_id(1027181853)p info.idinfo.title.gsub!(/*/,) info.title.gsub!(/&a-zA-Z1,10;/,) info.title.gsub!(/*/,) info.title.gsub!(/(/)/,)info.title.gsub!(rn, ) info.title.gsub!(, ) #全角空格info.title.gsub!(), ) #全角空格info.title.gsub!(r, )info.title.gsub!(_, ) info.title.gsub!(, ) info.title.gsub!(, ) info.title.gsub!(., ) info.title.gsub!( , ) info.title.gsub!(t, ) info.title.gsub!((, )#全角空格info.title.gsub!(), )#全角空格info.title.gsub!(/, ) info.title.gsub!(, )(22)转为字符串to_s 例子:id.to_s数组:(1)建立清除数组t = Araay.newt.clear #清除数组(2)访问元素t = php,ruby,pythonputs t0puts t.at(0) #at会比较快点puts t.first #第一个元素puts t.last #最后一个元素puts t.index “php” #返回数组索引值(3)简单初始化数组a = Array(0.9)puts aaa = %w2001 2002 2003 2005 2006 2007 2008 2009 2010 2011puts aa用Array new方法创建数组b = Array newb0 = aab1 =bb(4)给数组添加元素a = 2010a 2011 2012puts aa.concat( q4) #也是链接两个数组(5)数组集合关系& 交集- 差集| 并集(6)数组去重a = %w2012 php ruby 2012puts a.uniq!(7)入栈出栈a = php,ruby,python,javaputs a.pop #出puts a.push asp #入(8)在索引为0的地方插入元素a = php,ruby,pythona.insert(0,asp) (9)shift unshift用法a = php,ruby,pythonputs a.shiftputs a.unshift(asp,c#)(10)delete 和 delete_at方法a = php,java,jspa.delete(jsp)a.delete_at(0)puts a(11)二维数组转一维a = php,html ,python,phtml puts a.flatten控制语句:(1)If条件语句res = if res = nil puts res is nilelse puts res is no nilend(2)连续3.times puts yang #yang yang yang4.upto(6) |x| print x #456(1.8).each |x| print x #123456781,2,3,4,5.each |x| print x #123451,2,3.collect |x| x*x #1,4,9(1.10).select |x| x%2 = 0 #2,4,6,8,10(1.10).reject |x| x%2 = 0 #1,3,5,7,9(3)caset = rubycase t when ruby: puts ruby when php: puts php else puts pythonend(4)WhileWhilea = php,ruby,asp,java,pythontmp = i = 0while i a.size do tmp php,two = ruby,three = pythona = :one = php,:two = ruby,:three = python(3)循环哈希aa =:one = php,:two = ruby,:three = pythonfor k,v in aa puts #k = #vendaa.each do |k, v| puts #k = #venda = a = php,b= ruby,c = java puts a.keysputs a.values(4)返回取值a.values_at a,b,c # 根据key值取得元素。a.index “php” 返回键值。哈希的排序方法是a.sort.根据键值。(5)清除哈希的方法a = 1 = php,2= python,3=java,4=ruby,5= cputs aputs a.delete( 3 )puts a.delete_if |key,value| value = java 类 对象 属性:(1)例子1:class PublishInfo ActiveRecord:Base self.table_name = v_publish_info establish_connection(:info242)end(2)例子2:class Rtindex_haoshubo2 def insert_info(id) Rtindex_haoshubo.connection.execute(INSERT INTO rtindex_haoshubos (id,title,content) values (+id.to_s+,+title+) endend a = Rtindex_haoshubo2.new #调用插入 a.insert_info(id)(3)#initialize是初始化方法,相当于Java的构造器。参数age有一个缺省值18, #可以在任何方法内使用缺省参数,而不仅仅是initialize。如果有缺省参数,参数表必须以有缺省值的参数结 def initialize( name, age=18 ) name = name age = age motherland = China end #初始化方法结束 def talk puts my name is +name+, age is +age.to_s #age.to_s:将数age转换为字符串。 if motherland = China puts I am a Chinese. else puts I am a foreigner. end end # talk方法结束 attr_writer :motherland=beginattr_writer :motherland 相当于def motherland=(value) return motherland =valueendattr_ reader :motherland 相当于def motherland return motherlandend attr_accessor :motherland 相当于attr_reader:motherland;attr_writer :motherland=end end # Person类结束 class Student :adapter = mysql,:host = 6,:port = 9306,:encoding = utf8, :username = info_reader, :password = info_reader, :database = info , :query_cache_enabled = true, :cache_classes = true,:pool= 2class Rtindex_haoshubo 网络编程 .NetRuby笔记二(类)2012/1/31 14:35:53 | 阅读1次 cla
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 住宅小区公共车位使用权竞拍合同
- 跨境贸易财产保全担保合同
- 高校毕业生就业质量保障与评价协议
- 房地产开发项目拆迁安置合同模板
- 电商行业代理记账与财务风险控制协议
- 孕妇预防畸形护理要点
- 2025年美容院转让协议
- 古诗词鉴赏之景物和事物形象(学生版)-2024小升初语文专项复习讲义
- 肿瘤基因检测行业发展分析
- 中医外科术后护理
- 大学英语四级选词填空
- 口腔颌面外科学 第十章 颞下颌关节疾病
- GB/T 3094-2012冷拔异型钢管
- GB 28347-2012食品安全国家标准食品添加剂肉桂酸
- 会议室一音响设备清单及参数8
- 国际法-海洋法课件
- 新农乳业设备作业指导书
- 幼儿园绘本故事:《这是我的》 课件
- 机械类毕业设计外文翻译
- 2022年淮南市人民医院医护人员招聘笔试模拟试题及答案解析
- 如何提升企业的生命力
评论
0/150
提交评论