• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

《20分钟体验Ruby》通过这个例子你能感受ruby

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
 1#!/usr/bin/env ruby
 2
 3class MegaGreeter
 4  attr_accessor :names  //设置属性,自动产生两个方法(name,name=)用来访问@name的值
       //想知道一个类提供了那些方法?类名.instance_methods会告诉你,如果只想知道自己定义的方法加个false参数
 5
 6  # Create the object
 7  def initialize(names = "World") //构造函数
 8    @names = names //定义了局部变量@names
 9  end
10
11  # Say hi to everybody
12  def say_hi
13    if @names.nil? //判断@names是否为nil
14      puts "" //输出
15    elsif @names.respond_to?("each") //判断@names是否有each方法
16
17      # @names is a list of some kind, iterate!
18      @names.each do |name| //循环
19        puts "Hello #{name}!"
20      end
21    else
22      puts "Hello #{@names}!"
23    end
24  end
25
26  # Say bye to everybody
27  def say_bye
28    if @names.nil?
29      puts ""
30    elsif @names.respond_to?("join")
31      # Join the list elements with commas
32      puts "Goodbye #{@names.join("")}.  Come back soon!"
33    else
34      puts "Goodbye #{@names}.  Come back soon!"
35    end
36  end
37
38end
39
40
41if __FILE__ == $0  //__FILE__ 现在运行的脚本文件的名字,$0 是启动脚本的名字.
                    //这允许代码作为库调用的时候不运行启动代码, 而在作为执行脚本的时候调用启动代码。
42  mg = MegaGreeter.new
43  mg.say_hi
44  mg.say_bye
45
46  # Change name to be "Zeke"
47  mg.names = "Zeke"
48  mg.say_hi
49  mg.say_bye
50
51  # Change the name to an array of names
52  mg.names = ["Albert""Brenda""Charles",
53    "Dave""Englebert"]
54  mg.say_hi
55  mg.say_bye
56
57  # Change to nil
58  mg.names = nil
59  mg.say_hi
60  mg.say_bye
61end

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap