Kotlin基礎教程-基礎文法

來源:互聯網
上載者:User

Basic Syntax 包的定義

package com.doctorqimport java.util.*fun main(args:Array<String>){    println("HelloWorld")}

這裡面的包定義和Java有一點不同,它和檔案所在的路徑沒有關係,但是編譯過後,卻會按照包名來產生路徑

函數定義 帶傳回值的函數

fun sum(a:Int,b:Int):Int{    return a+b}

函數關鍵字為fun(少敲幾個字母了),參數名和類型要倒敘,傳回值用:後面跟類型。這個很Scala

而且調用函數,沒有對象的概念,直接調用了。

(編譯過程有點慢啊) 運算式函數

fun sum(a: Int, b: Int) = a + b

無傳回值的函數

Unit關鍵字表示

fun printSum(a: Int, b: Int): Unit {    println("sum of $a and $b is ${a + b}")}

也可預設

fun printSum(a: Int, b: Int) {    println("sum of $a and $b is ${a + b}")}

本地變數

常量,關鍵字val

val a:Int = 1val b = 1

變數,關鍵字var

val c c = 1

這種運算式在REPL中無法實現報錯:

所以還是用IDEA展示下

注釋

可以使用雙斜杠//注釋一行語句,或者/**/的格式備註陳述式塊

格式化字串

在字串中輸出字串,以$+變數名的形式就可以直接讀取字串的值

val name:String="doctorq"println("Hello World,$name")

字串中調用函數

val name:String="doctorq"val s = "Hello World,$name"val age = "27"val s2 = "${s.replace("World","Girl")},I am $age"

條件運算式

正常語句

fun maxOf(a: Int, b: Int): Int {    if (a > b) {        return a    } else {        return b    }}

條件運算式

fun maxOf(a: Int, b: Int) = if (a > b) a else b

這個很scala,看下scala的定義:

一模一樣,兩者利用的是最後一個語句塊作為傳回值,無需用return返回。 空值安全檢查

對於可能返回空值的函數,必須標註出來,在傳回值類型後面跟?表示,比如有一個函數返回Int值,如果可能返回空值,那就要寫成Int?

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.