笔记:
Ruby会默认返回方法中的最后一个值。
如果需要返回多个值,可以用数组来实现。
可以通过强制声明return来返回值。
基础的输出方法是用puts(输出一行),print(直接打印)。
基础的输入方法是gets(读入一行,包含行尾的'\n',可以用chomp方法消除)。
纯粹的现象对象语言,而且还是一个动态语言(虽然今天目前还没用到),所以老老实实面向对象去。
有两种简单粗暴的储存多个元素的方法。数组[]和哈希表{},而且还有各种各样的函数。
强烈推荐新手入门在线学习网站: http://tryruby.org/ ,简直爽到爆!
各种代码
eg1: 建立一个哈希表
ojs = {} ojs["poj"] = :A ojs["hdu"] = :A ojs["uva"] = :B ojs["zoj"] = :B ojs["CF"] = :S ojs["TC"] = :S ratings = Hash.new(0) ojs.values.each { |rate| ratings[rate] += 1 } print ratings puts "" puts "===============================" print ojs puts "" puts "===============================" 3.times {print "hey!"} puts "" puts "===============================" print ojs.length puts "" print ojs.keys puts "" print ojs.values puts "" ojs.keys.each { |name| print name; print " "; print ojs[name]; puts ""; } puts "===============================" print File.read("x.txt") puts "===============================" File.open("x.txt", "a") do |f| f << "HACKED!\n" end print File.read("x.txt") puts "===============================" print File.mtime("x.txt") puts "" print File.mtime("x.txt").hour puts "" puts "==============================="
eg2: 从文件读数据建立一个哈希表
# 读取一个文件的数据库并且输出 def load_oj( path ) ojs = {} File.foreach(path) do |line| name, value = line.split(':') ojs[name] = value end print_oj(ojs) end def print_oj( data ) puts "================================" print "name\tvalue\n" data.keys.each do |name| puts "#{name}\t#{data[name]}" end puts "================================" end oj = load_oj("x.txt")
eg3: 从文件中读取学生信息并且输出
# 从文件中读取学生信息并且输出 class Student #attr_accessor :name #attr_accessor :number def initialize(name = "Unknown", number = "2012309999") @name = name @number = number end def print puts "#{@name}\t#{@number}" end end def load_stu( path ) data = {} File.foreach(path) do |line| na, no = line.split(' ') s = Student.new(no, na) data[s] = 1 end data end def print_stu( data ) puts "================================" print "name\tnumber\n" data.keys.each do |stu| stu.print end puts "================================" end data = load_stu("y.txt") print_stu(data)
eg4: 一行内输入4个整数,计算这四个数的最大公约数
# 一行内输入4个整数,计算这四个数的最大公约数 def gcd(a, b) if b === 0 return a else return gcd(b, a % b) end end str = gets.chomp a, b, c, d = str.split(" ") g1 = gcd(a.to_i, b.to_i); g2 = gcd(c.to_i, d.to_i); g3 = gcd(g1, g2) puts "gcd(#{a}, #{b}, #{c}, #{d}) = #{g3}"
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]