创建范围
包含端点与不包含端点的范围
创建范围 是 CoddyKit 上的免费 Ruby Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Ruby Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Ruby Academy 课程共包含 4 节课。
什么是范围?
范围表示起始值和结束值之间的一个序列。使用两个点表示,例如 1..5。
r = 1..5
puts r
puts r.class包含结束值的范围
两个点会创建一个包含结束值的范围。1..5 包含 1、2、3、4、5。
puts (1..5).to_a.inspect不包含结束值的范围
三个点会创建一个不包含结束值的范围,在结束值之前停止。1...5 包含 1、2、3、4。
puts (1...5).to_a.inspect遍历范围
范围支持 each,因此您可以直接循环,而不必先将其转换为数组。
(1..3).each { |n| puts "count #{n}" }字母区间
字母同样适用于区间。'a'..'e' 会遍历字母表。
puts ('a'..'e').to_a.inspect检查成员关系
include? 和 cover? 用于检查某个值是否落在区间内。对于数字,cover? 更快。
r = 1..10
puts r.include?(5)
puts r.cover?(11)case 语句中的区间
区间在 case 语句中尤其好用,因为 === 会检查成员关系。
score = 85
grade = case score
when 90..100 then "A"
when 80...90 then "B"
else "C"
end
puts grademin、max 和 sum
数值区间可以直接提供 min、max 和 sum。
r = 1..10
puts r.min
puts r.max
puts r.sum使用 step 遍历区间
step 会按照指定的增量遍历区间。
(0..10).step(2) { |n| print "#{n} " }
puts用于切片的区间
在数组或字符串的方括号中使用区间,即可获取其中的一段。
letters = %w[a b c d e]
puts letters[1..3].inspect
puts "hello"[0..2]无限区间
省略末尾即可创建无限区间,适合将数组切片到末尾。
nums = [10, 20, 30, 40]
puts nums[1..].inspect快速检查
检查您对区间的理解。
回顾
您已经学会了区间:
1..5包含末值,而1...5不包含末值- 使用
each和step进行遍历 - 字母区间和
case的用法 min、max、sum、切片和无限区间
下一步:Enumerable 模块。
puts (1..100).sum常见问题解答
「创建范围」课时是免费的吗?
是的 — 「创建范围」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Ruby Academy 课程的其余内容,请升级到 CoddyKit PRO。 Ruby Academy 课程共包含 4 节课。
「创建范围」这节课中我会学到什么?
包含端点与不包含端点的范围 你通过在浏览器中直接运行的动手代码来练习 Ruby Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Ruby Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Ruby Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「创建范围」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Ruby Academy 课中编写并运行代码吗?
能。每节 Ruby Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。