電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>Kotlin實(shí)戰(zhàn)與Android的應(yīng)用筆記詳細(xì)說明

Kotlin實(shí)戰(zhàn)與Android的應(yīng)用筆記詳細(xì)說明

2020-12-31 | docx | 4.16 MB | 次下載 | 5積分

資料介紹

Kotlin語言在Android Studio中應(yīng)用前景廣闊,本文是編者在應(yīng)用開發(fā)中查找資料的總結(jié),內(nèi)容主要來自網(wǎng)絡(luò),讀者可以作為手冊(cè)來查找并復(fù)制有用的內(nèi)容到自己的應(yīng)用當(dāng)中。 Kotlin語言部分講述了Kotlin支持的基本數(shù)據(jù)類型的定義和字節(jié)數(shù),集合類型:List、Map和Set類,可變長(zhǎng)度和不可變長(zhǎng)度集合類型的定義,結(jié)合類型的成員和方法,字符串類型詳解,類的定義,枚舉類、數(shù)據(jù)類和密封類。

  Kotlin實(shí)戰(zhàn)(一)

  Kotlin 基本數(shù)據(jù)類型、變量、常量。變量定義修飾符兩個(gè): val、var。val表示該變量可以初始化一次,以后不能再賦值。var表示該變量可以隨時(shí)賦值。

  一、簡(jiǎn)介

  Kotlin 是一個(gè)用于現(xiàn)代多平臺(tái)應(yīng)用的靜態(tài)編程語言,由 JetBrains 開發(fā)。

  Kotlin可以編譯成Java字節(jié)碼,也可以編譯成JavaScript,方便在沒有JVM的設(shè)備上運(yùn)行。

  Kotlin已正式成為Android官方支持開發(fā)語言(Google IO 2017宣布)。

  分享關(guān)于kotlin的幾個(gè)網(wǎng)站

  kotlin官方網(wǎng)站:https://kotlinlang.org/

  kotlin官方網(wǎng)站(中文翻譯版):https://www.kotlincn.net/

  kotlin在線工具網(wǎng)站(可執(zhí)行kotlin代碼):https://try.kotlinlang.org/

  二、Kotlin數(shù)據(jù)類型

  2.1 kotlin的基本數(shù)值類型

  包括Byte,Short,Int,Long,F(xiàn)loat,Double等。與java有差別的是字符不屬于數(shù)值類型,而是一個(gè)獨(dú)立的數(shù)據(jù)類型。其內(nèi)存大小則分別是Byte 8位,Short 16位,Int 32位,Long 64位,F(xiàn)loat 32位,Double 64位,與Java基本沒有差別。

  2.2字面常量

  下面是所有類型的字面常量:

  十進(jìn)制:123

  長(zhǎng)整型以大寫的L結(jié)尾:123L

  16進(jìn)制以0x開頭:0x0F

  2進(jìn)制以0b開頭:0b00001011

  ***注意:kotlin不支持8進(jìn)制

  kotlin同時(shí)也支持傳統(tǒng)符號(hào)表示的浮點(diǎn)數(shù)值:

  Double默認(rèn)寫法:123.5,123.5e10

  Float使用f或者F后綴:123.5f

  可以使用下劃線使數(shù)字常量更易讀:

  val oneMillion = 1_000_000

  val creditCarNumber = 1234_5678_9012_3456L

  val socialSecurityNumber = 999_99_9999L

  val hexBytes = 0xFF_EC_DE_5E

  val bytes = ob11010000_010100_11100

  2.3比較兩個(gè)數(shù)字

  kotlin中沒有基礎(chǔ)數(shù)據(jù)類型,只有封裝的數(shù)字類型,你每定義的一個(gè)變量,kotlin幫你封裝了一個(gè)對(duì)象。這樣確保了不會(huì)出現(xiàn)空指針。數(shù)字類型也一樣。所有在比較兩個(gè)數(shù)字的時(shí)候,就有比較數(shù)據(jù)大小和比較兩個(gè)對(duì)象是否相同的區(qū)別了。

  * === :表示比較對(duì)象地址。

  *==:表示比較兩個(gè)值的大小。

  2.4類型轉(zhuǎn)換

  由于不同的表示方式,較小類型并不是較大類型的子類型,較小的類型不能隱式的轉(zhuǎn)換為較大的類型。這意味著在不進(jìn)行顯示轉(zhuǎn)換的情況我們不能把byte型值賦給一個(gè)int變量。

  val b: Byte = 1 //ok ,字面值是靜態(tài)檢測(cè)

  val i : Int = b //錯(cuò)誤

  //正確做法

  val i :Int = b.toInt()

  由此引出的各種數(shù)據(jù)類型轉(zhuǎn)換方法。

  toByte() : Byte

  toShort():

  toInt():

  toLong():

  toFloat():

  toDouble():

  toChar():

  但是有些情況下也是可以使用自動(dòng)類型轉(zhuǎn)換的,前提是可以根據(jù)上下文環(huán)境推斷出正確的數(shù)據(jù)類型而且數(shù)學(xué)操作符會(huì)做相應(yīng)的重載。例如:

  val 1 = 1L + 3 //Long + Int =》 Long

  2.5位操作符

  對(duì)于Int和Long類型,還有一系列位操作符可以使用,分別是:

  shl(bits) - 左移位(Java 《《)

  shr(bits) -右移位(Java 》》)

  ushr(bits) -無符號(hào)右移位(Java 》》》)

  and(bits) -與

  or(bits) -或

  xor(bits) -異或

  inv() -反向

  2.6字符

  和Java不同的是,kotlin 中Char不能和數(shù)字操作,Char必須是是單引號(hào)‘包含起來的,比如普通字符’0‘,’a‘。

  fun check(c : Char) {

  if (c == 1) { //錯(cuò)誤 類型不兼容

  }

  }

  字符字面值用單引號(hào)括起來:’1‘。特殊字符可以用反斜杠轉(zhuǎn)義。

  支持以下轉(zhuǎn)義序列:\t,\b,\n,\r,\’,\“,\\和\$。編碼其他字符要用Unicode轉(zhuǎn)義序列語法:”\uFF00“。

  當(dāng)需要可空引用時(shí),像數(shù)字,字符會(huì)被裝箱。裝箱操作不會(huì)保留同一性。

  2.7布爾

  布爾用Boolean類型表示,它有兩個(gè)值:true和false。

  若需要可空引用會(huì)被裝箱。

  內(nèi)置的布爾運(yùn)算有:

  || -短路邏輯或

  && - 短路邏輯與

  ! - 短路邏輯非

  2.8 數(shù)組

  數(shù)組用類Array實(shí)現(xiàn),并且還有一個(gè)size屬性及get和set方法。

  由于使用[]重載了get和set方法。所以我們可以通過下標(biāo)很方便的獲取或者設(shè)置數(shù)組對(duì)應(yīng)位置的值。

  數(shù)組的創(chuàng)建兩種方式:一種是使用函數(shù)arrayOf();另外一種是使用工廠函數(shù)。如下所示我們分別是兩種方式創(chuàng)建了兩個(gè)數(shù)組:

  fun main(args: Array《String》){

  val a=arrayOf(1,2,3) //定義數(shù)組{1,2,3}

  val b=Array(3,{i-》2*i}) //定義數(shù)組{0,2,4}

  println(a[0]) //輸出 1

  println(b[0]) //輸出 0

  }

  注意:[] 運(yùn)算符代表調(diào)用成員函數(shù)get()和set()。

  注意:與Java不同的是,kotlin中數(shù)組是不型變的。(invariant)。

  除此之外還有 ByteArray,ShortArray,IntArray,用來表示各個(gè)類型的數(shù)組,省去了裝箱操作,因此效率更高,其用法同Array一樣。

  2.9字符串

  和Java一樣,String是不可變的。方括號(hào)[]語法可以很方便的獲取字符串中的某個(gè)字符,也可以通過for循環(huán)來遍歷:

  fun main(args: Array《String》){

  val str=”asdfghjkl”

  for(c in str){

  print(c+”\t”)

  }

  }

  kotlin支持三個(gè)引號(hào)‘’‘ ’‘’括起來的字符串,支持多行字符串比如:

  fun main(args:Array《String》){

  val str=”””

  白日依山近,

  黃河入海流。

  欲窮千里目,

  更上一層樓。

  “””

  print(str)

  }

  當(dāng)然也可以通過.trimMargin()刪除多余的空白。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21548次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)