今天就跟大家聊聊有關(guān)Kotlin函數(shù)的默認(rèn)值是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名申請、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、阿克蘇網(wǎng)站維護(hù)、網(wǎng)站推廣。
簡要對比如下:
1、Java函數(shù)定義,如果sayHelloTo函數(shù)中的lastName可以使用默認(rèn)值,則需要定義如下兩個(gè)函數(shù).
public class Person { public void sayHelloTo(String firstName,String lastName){ System.out.println("Hi,"+firstName+" "+lastName); } public void sayHelloTo(String firstName){ sayHelloTo(firstName,"noLastName"); } }
2、Kotlin定義如下,只需要一個(gè)函數(shù)
class Person { fun sayHelloTo(firstName: String, lastName: String = "noLastName") { println("Hi,$firstName $lastName") } }
Kotlin函數(shù)默認(rèn)值詳細(xì)規(guī)則
1、可以采用指定全部參數(shù)名和不指定參數(shù)名的調(diào)用方式,推薦采用指定參數(shù)名的調(diào)用方式(不能指定部分函數(shù)參數(shù)名,其他的不指定)
正確樣例:
sayHelloTo("Jerry","Aha") sayHelloTo(firstName = "Jerry",lastName = "Aha")
錯(cuò)誤樣例:
sayHelloTo(firstName = "Jerry","Aha")
2、在指定參數(shù)名時(shí),所有無默認(rèn)值參數(shù)傳入值即可
樣例:
sayHelloTo(firstName = "Jerry",lastName = "Aha")
3、在不指定參數(shù)名時(shí),則需要區(qū)分情況:
如果函數(shù)定義時(shí),所有具有默認(rèn)值的參數(shù)都在最后,則可以只傳入無默認(rèn)值參數(shù)值.
樣例:
函數(shù)定義:
fun sayHelloTo(firstName: String, lastName: String = "Aha")
正確樣例:
sayHelloTo("Jerry")
如果函數(shù)定義時(shí),具有默認(rèn)值的參數(shù)并不都是在最后面,則必須傳入所有參數(shù)值.
樣例:
函數(shù)定義:
fun sayHelloTo(firstName: String, middleName: String = "",lastName: String)
正確樣例:
sayHelloTo("Jerry","","Aha")
錯(cuò)誤樣例:
sayHelloTo("Jerry","Aha")
Demo代碼
1、Person.kt
class Person( val firstName: String = "Jerry", val lastName: String = "Yin" ) { fun sayHello() { System.out.println("Hi,$firstName $lastName") } fun sayHelloTo(firstName: String = "Baby", lastName: String = "Aha") { System.out.println("Hi,$firstName $lastName") } }
2、Person2.kt
class Person2( val firstName: String = "Jerry", val lastName: String ) { fun sayHello() { System.out.println("Hi,$firstName $lastName") } fun sayHelloTo(firstName: String = "Baby", lastName: String) { System.out.println("Hi,$firstName $lastName") } }
3、調(diào)用代碼:
Person().sayHello() Person("Jerry1").sayHello() Person("Jerry2", "Yin2").sayHello() Person(firstName = "Jerry3").sayHello() Person(lastName = "Yin4").sayHello() Person().sayHelloTo() Person().sayHelloTo("Baby1") Person().sayHelloTo("Baby2", "Aha2") Person().sayHelloTo(firstName = "Baby3") Person().sayHelloTo(lastName = "Aha4") Person2(lastName = "Yin5").sayHello() Person2("Jerry6", "Yin6").sayHello() Person2("", "").sayHelloTo(lastName = "Yin8") Person2("", "").sayHelloTo("Jerry9", "Yin9")
看完上述內(nèi)容,你們對Kotlin函數(shù)的默認(rèn)值是什么有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
文章題目:Kotlin函數(shù)的默認(rèn)值是什么
文章URL:http://chinadenli.net/article2/geodic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、商城網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、企業(yè)網(wǎng)站制作、動(dòng)態(tài)網(wǎng)站、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)