class ForLoop
def callFor
for i in 1..3
print "index = #{i}\n"
end
end
def callWhile
a = 1
a *= 2 while a < 10
puts a
a -= 2 until a < 0
puts a
end
def callWhile2
a = 1
a += 1 while a < 5
puts a
# print "index = #{a}\n"
end
def time
3.times do
print "Ho! "
end
end
def upto
1.upto(3) do |x|
puts x
end
end
def step
0.step(10, 2) do |x|
puts x
end
end
def each
[1, 2, 3, 4, 5].each do |x|
puts x
end
end
def callFor2 # seems similar as each
for n in [5, 4, 3, 2, 1]
puts n
end
end
def callLoop
i = 0
loop do
i += 1
puts i
next if not i > 3
puts "i > 3"
redo if i >= 6 and i <= 9
puts "i < 6 or i > 9"
break if i == 10
end
end
end
instance = ForLoop.new
instance.callFor
print "----------\n"
instance.callWhile2
print "----------\n"
instance.time
print "\n----------\n"
instance.upto
print "----------\n"
instance.step
print "----------\n"
instance.each
print "----------\n"
instance.callFor2
print "----------\n"
instance.callLoop
# output
#index = 1
#index = 2
#index = 3
#----------
#5
#----------
#Ho! Ho! Ho!
#----------
#1
#2
#3
#----------
#0
#2
#4
#6
#8
#10
#----------
#1
#2
#3
#4
#5
#----------
#5
#4
#3
#2
#1
#----------
#1
#2
#3
#4
#i > 3
#i < 6 or i > 9
#5
#i > 3
#i < 6 or i > 9
#6
#i > 3
#7
#i > 3
#8
#i > 3
#9
#i > 3
#10
#i > 3
#i < 6 or i > 9
ruby loop变现形式真多
分享到:
相关推荐
2. **事件循环(Event Loop)**:Ruby-Async中的事件循环负责管理所有的异步操作,监控I/O事件,并根据需要调用相应的回调函数。事件循环是异步编程的心脏,它确保了所有任务的有序执行。 3. **组合性...
`Pry` 是一个替代 IRB(Interactive Ruby)的 REPL(Read-Eval-Print Loop),它提供了更多的功能和方便的上下文导航;而 `Byebug` 是一个源码级别的调试器,可以让你在代码执行时插入断点,查看变量值,甚至控制...
Ruby-LightIO是一个针对Ruby开发者的网络库,其核心特性在于将Ruby的Fiber和高效的IO事件循环(event loop)相结合。这个库的设计目标是为了提供更高效、更轻量级的网络服务处理能力,尤其适合于构建高并发、低延迟...
loop do client = server.accept request = client.gets.chomp puts "Received: #{request}" client.puts "Hello, World!" client.close end ``` 在这个例子中,我们创建了一个监听8080端口的服务器,当客户端...
本资料包“ruby-使用ruby实现的算法之冒泡排序.zip”专注于讲解如何使用Ruby来实现经典的冒泡排序算法,这对于理解排序算法以及提升Ruby编程技能非常有帮助。 冒泡排序是一种基础且直观的排序算法,它通过重复遍历...
5. **游戏循环(Game Loop)**:游戏的核心是一个无限循环,直到游戏结束。循环中,玩家轮流进行移动,每次移动后检查游戏状态,如果游戏结束,则跳出循环。 6. **错误处理(Error Handling)**:为了增加用户体验...
这个压缩包`graalvm-jdk-21-macos-x64-bin.tar.gz`包含了所有必要的组件,使得开发者能够在macOS平台上利用GraalVM的强大功能进行Java应用程序的开发、运行和优化。 **GraalVM 概述** GraalVM 是一个开放源代码的...
Ruby实现协议(一种用于发布/订阅消息传递的轻量级协议)的纯Ruby gem。... connect ( 'test.mosquitto.org' ) do | c | # If you pass a block to the get method, then it will loop c . get ( 'test'
Ruby 事件框架 事件框架是一个提供发布订阅模式的简约库。 安装 gem install event-framework 例子 require 'event-framework' class Server include EF :: Object end class Client include EF :: Object end ...
loop do display_board(board) move = get_move board[move / 3][move % 3] = current_player if game_over?(board) puts "#{current_player} wins!" if current_player != " " puts "It's a tie!" if current...
- `while`、`until`用于循环,`for`用于遍历,`loop`用于无限循环。 - `break`、`next`、`redo`用于控制循环流程。 3. **函数与方法**: - Ruby中函数和方法是一致的概念,使用`def`定义,`end`结束。 - 可以...
- **循环:** `loop`、`while`、`until`、`for...in`等循环结构。 #### 七、方法 - **运算符重定义:** 可以通过定义特殊方法来重定义运算符的行为。 - **变长参数:** 方法可以接受任意数量的参数。 - **块调用:*...
loop do puts "---用户管理系统---" puts "1. 添加用户" puts "2. 查看用户列表" puts "3. 退出" puts "请选择操作:" choice = gets.chomp.to_i case choice when 1 add_user(users) when 2 view_users...
- `loop`循环:无限循环,通常配合`break`跳出循环。 - `times`循环:重复执行指定次数。 - `upto`循环:从初始值递增到指定值。 - `each_index`循环:遍历数组索引。 5. 异常处理 - 使用`begin-rescue-else-...
这是我们在Ruby中最简单的循环构造。 它只是执行一个块(位于do和end关键字之间的代码)。 在您的终端的IRB中尝试以下操作: loop do puts "I have found the Time Machine!" end 这将输出I have found the Time...
Ruby支持多种循环结构,如`loop`、`while`、`until`等。 #### 七、方法 **7.1 运算符重定义** Ruby允许重新定义某些内置运算符的行为。 **7.2 变长参数** 方法可以接受数量不定的参数。 **7.3 块调用** 方法...
《Programming Ruby 1.9 (3rd edition)》是一本专为程序员编写的关于Ruby语言的权威指南,这本书的第三版详细介绍了Ruby 1.9版本的语言特性、库以及编程实践。Ruby是一种动态、面向对象的脚本语言,以其简洁、优雅的...
#sketchup-loop-subdivision适用于Google Sketchup的Loop细分插件。 循环细分可平滑硬边缘,以提供更圆润的有机外观。 ## Installing从下载文件loop_subdiv.rb并将其保存在Google Sketchup插件目录中。 在Windows...
- **6.9.1 Loop** - **6.9.2 While** - **6.9.3 Until** - **6.9.4 Iterator** - **6.9.5 For..In** - **6.9.6 Break,Redo,Next** - **6.9.7 Retry** #### 七、方法 **7.1 运算符重定义** 允许用户定义自己的...