Ruby
CbdFocus
耐心是美德。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Ruby Block demo
def my_m yield(2)endx = 1my_m do |x| puts xendputs x输出: 2 1原创 2015-07-26 21:16:46 · 276 阅读 · 0 评论 -
Ruby 去掉结尾空格
有几个方法可选strip() #对字符串中间的空白不做任何处理 irb(main):012:0> " \tHello \n world.\r\n ".strip=> "Hello \n world."irb(main):013:0> " \tHello \n world.\r\n ".lstrip=> "Hello \n world.\r\n "irb(main):014:0>原创 2015-07-24 14:56:05 · 2541 阅读 · 0 评论 -
用method_missing 实现的 OpenStruct
功能类似一个dict类,map[“abc”] = “aabbcc”; 直接就往map这个dict中添加了一个『abc』——『aabbcc』这个键值对。用method_missing来实现,MyOpenStruct类相当于这个dict类,直接往里塞实例方法和其对应的值。class MyOpenStruct def initialize @attributes = {} end def原创 2015-07-24 14:29:34 · 437 阅读 · 0 评论 -
ruby 类也是对象
自定义一个MyClass类,它继承自Object类,Object又继承自BaseObject。obj1,obj2,obj3分别是MyClass的实例对象,MyClass是Class的实例对象。差别是obj1的名字是变量『小写字母』,MyClass是常量『大写字母』。Class可以理解为继承自Model,比Model多了new(),allocate()和superclass()等方法来构建继承结构原创 2015-07-23 16:02:11 · 352 阅读 · 0 评论 -
Ruby gsub() gsub!()
gsub()第一个参数是reg,第二个参数是被替换的字符。 返回更改的字符串,对原字符串无副作用。 没有匹配会返回原字符串。irb(main):001:0> str = "regWord"=> "regWord"irb(main):002:0> str.gsub(/W/,'w')=> "regword"irb(main):003:0> str=> "regWord"gsub!()有匹配原创 2015-07-23 13:23:43 · 2342 阅读 · 0 评论 -
Ruby debug
ruby 非常酷炫的debug工具pry。 可以在想要断点的位置加入“binding.pry”,程序会在这里暂停,允许你在命令行里对已有对象进行操作。require "pry"a = [1, 2, 3]a << 4binding.pry # execution will pause here, allowing you to inspect all objectsa << 5put原创 2015-07-22 17:35:04 · 649 阅读 · 0 评论 -
Ruby 判断是否空 empty? nil?
empty? 对象的值是否为空 nil? 对象本身是否为空rb(main):015:0> ''.empty?=> trueirb(main):016:0> ' '.empty?=> falseirb(main):017:0> "".empty?=> trueirb(main):018:0> " ".empty?=> falseirb(main):019:0> nil.empty?原创 2015-07-20 14:44:28 · 8084 阅读 · 0 评论 -
Ruby 第一行代码
main.rb#=猜数字#这是一个简单的猜数字游戏#==玩法#随机生成一个『1,100』的自然数,会提示大小class GuessNum def playGame wrongInt = true c = 0 num = rand 100 while wrongInt c+=1 puts "请输入您猜测的数字『0~100』"原创 2015-07-19 12:29:03 · 704 阅读 · 0 评论 -
Ruby 常量作用域
特殊情况『1』内部类不会自动引用其外部类的父类# Info = "顶层info"class Father Info = "父类Info" # puts Infoendclass Son < Father # Info = "子类Info" # puts Info class Inner # Info = "内部类Info" puts Info endend原创 2015-07-19 13:06:39 · 596 阅读 · 0 评论 -
Ruby 比较方法
转自:http://wongyouth.com/blog/2014/07/05/variations-of-equal-method-in-ruby/Ruby里面有4种比较方法,equal?, eql?, ==, ===,而且在不同的类里面表现的很不一样。在使用的时候也特别容易搞糊涂。 这篇博文将演示一些代码来讲解各个方法。== - 类意义上的 相等,需要每个类自己定义实现在特定类中觉得两个对象是转载 2015-07-15 11:35:36 · 355 阅读 · 0 评论 -
ruby gem关系可视化
新建测试项目rails new app查看Gemfile.lock截取部分,文件根据空格缩进来表示依赖层级。GEM remote: https://rubygems.org/ specs: actionmailer (4.2.3) actionpack (= 4.2.3) actionview (= 4.2.3) activejob (= 4.2.原创 2015-07-26 16:43:55 · 457 阅读 · 0 评论 -
ruby 方法调用的一小点
定义self.method,在之后就可以直接用类名来调用方法了,类似Java的static方法。include的先后顺序是有意义的,『这里不同于Java的import,Java的import顺序无关』先include的module会在ancestor树的上方,更靠近BasicObject。module My_a def self.dosth puts "This is A do st原创 2015-07-24 11:41:48 · 339 阅读 · 0 评论
分享