第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在Scala中打破循環(huán)?

如何在Scala中打破循環(huán)?

如何中斷循環(huán)?var largest=0for(i<-999 to 1 by -1) {    for (j<-i to 1 by -1) {        val product=i*j        if (largest>product)            // I want to break out here        else           if(product.toString.equals(product.toString.reverse))              largest=largest max product    }}如何將嵌套的for循環(huán)轉(zhuǎn)換為尾遞歸?從FOSDEM 2009 上的Scala Talk http://www.slideshare.net/Odersky/fosdem-2009-1013261在第22頁上:中斷并繼續(xù)Scala沒有它們。為什么?它們有點必要。更好地使用許多較小的函數(shù)發(fā)行如何與閉包進(jìn)行交互。不需要它們!有什么解釋?
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻(xiàn)2021條經(jīng)驗 獲得超8個贊

Scala 2.8中對此進(jìn)行了更改,它具有使用中斷的機(jī)制。您現(xiàn)在可以執(zhí)行以下操作:


import scala.util.control.Breaks._

var largest = 0

// pass a function to the breakable method

breakable { 

    for (i<-999 to 1  by -1; j <- i to 1 by -1) {

        val product = i * j

        if (largest > product) {

            break  // BREAK!!

        }

        else if (product.toString.equals(product.toString.reverse)) {

            largest = largest max product

        }

    }

}


查看完整回答
反對 回復(fù) 2019-11-21
?
素胚勾勒不出你

TA貢獻(xiàn)1827條經(jīng)驗 獲得超9個贊

打破for循環(huán)永遠(yuǎn)不是一個好主意。如果您使用for循環(huán),則意味著您知道要迭代多少次。使用帶有2個條件的while循環(huán)。


例如


var done = false

while (i <= length && !done) {

  if (sum > 1000) {

     done = true

  }

}


查看完整回答
反對 回復(fù) 2019-11-21
  • 3 回答
  • 0 關(guān)注
  • 623 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號