iT邦幫忙

2023 iThome 鐵人賽

DAY 15
0
自我挑戰組

自我挑戰Ruby系列 第 15

Day 15 - 流程控制4

  • 分享至 

  • xImage
  •  

方法式迴圈

times方式:

以n.times do ~end的形式。

其中n為個數,times的方式即是以n為次數的迴圈。

例如:

3.times do

   puts "---"

end

3.times 即是迴圈做3次。

當第一次時,會印出 - - -

當第二次時也印出 - - -

以此類推… 做了3次一樣的事。

https://ithelp.ithome.com.tw/upload/images/20230930/20162251b1HqAa8Qtl.png

upto方式:

以r.upto(n) do |i|~end的形式。

代表從r次連續做,遞增做到第n次。

例如:1.upto(3) 代表從1開始做到3。

起始值也可以從其他數字為起始值,

例如:2.upto(6)代表從2開始做到6。

https://ithelp.ithome.com.tw/upload/images/20230930/20162251MkvF4Fvnb6.png

downto方式:

以r.downto(n) do |i|~end的形式。

代表從r次連續做,遞減做到第n次。

例如:5.upto(1) 代表從5開始做到1。

起始值也可以從其他數字為起始值,

例如:6.upto(3)代表從6開始做到3。

https://ithelp.ithome.com.tw/upload/images/20230930/20162251h03ynyWLtn.png

迭代式

迭代主要是在做重複做相同的事,迭代式其實跟一般迴圈的概念相同,

將一個一個元素都看過,而對某個對象做迴圈。

以x.each do~end的形式。

例如:


names = ["Andy", "Allen", "Arance"]

names.each do |name|
    puts "hi!#{name}"
end

藉由each do 讓每個元素印出來。

names.each.with_index do |name, ind|
    puts "No.#{ind+1},#{name}"
end

藉由with_index讓每個元素有個序號,但由於序號從0開始,這邊藉由ind+1,使第一個為1。

https://ithelp.ithome.com.tw/upload/images/20230930/20162251isSNfMpqDr.png

Day 15 結語

藉由了很多篇來描述了流程控制,希望藉由這些方法未來做流程控制可以更上手,

由不斷的練習來改善自己的不足,讓自己對這些方法更上手,不斷促進自己學習上的成長。


上一篇
Day 14 - 流程控制3
下一篇
Day 16 - 陣列1
系列文
自我挑戰Ruby30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言