本篇內(nèi)容主要講解“Scala允許的重復(fù)參數(shù)怎么用”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Scala允許的重復(fù)參數(shù)怎么用”吧!
專注于為中小企業(yè)提供做網(wǎng)站、網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)瑯琊免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000+企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
Scala允許你指明函數(shù)的***一個(gè)參數(shù)可以是重復(fù)的。這可以允許客戶向函數(shù)傳入可變長(zhǎng)度參數(shù)列表。想要標(biāo)注一個(gè)重復(fù)參數(shù),在參數(shù)的類型之后放一個(gè)星號(hào)。例如:
scala> def echo(args: String*) = for (arg < - args) println(arg) echo: (String*)Unit
這樣定義,echo可以被零個(gè)至多個(gè)String參數(shù)調(diào)用:
scala> echo() scala> echo("one") one scala> echo("hello", "world!") hello world!
函數(shù)內(nèi)部,重復(fù)參數(shù)的類型是聲明參數(shù)類型的數(shù)組。因此,echo函數(shù)里被聲明為類型“String*”的args的類型實(shí)際上是Array[String]。然而,如果你有一個(gè)合適類型的數(shù)組,并嘗試把它當(dāng)作重復(fù)參數(shù)傳入,你會(huì)得到一個(gè)編譯器錯(cuò)誤:
scala> val arr = Array("What's", "up", "doc?") arr: Array[java.lang.String] = Array(What's, up, doc?) scala> echo(arr) < console>:7: error: type mismatch; found : Array[java.lang.String] required: String echo(arr) ?
要實(shí)現(xiàn)這個(gè)做法,你需要在數(shù)組參數(shù)后添加一個(gè)冒號(hào)和一個(gè)_*符號(hào),像這樣:
scala> echo(arr: _*) What's up doc?
這個(gè)標(biāo)注告訴編譯器把a(bǔ)rr的每個(gè)元素當(dāng)作參數(shù),而不是當(dāng)作單一的參數(shù)傳給echo。
到此,相信大家對(duì)“Scala允許的重復(fù)參數(shù)怎么用”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
當(dāng)前題目:Scala允許的重復(fù)參數(shù)怎么用
標(biāo)題鏈接:http://chinadenli.net/article20/jiisjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站策劃、搜索引擎優(yōu)化、ChatGPT、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)