Gson是Google所提供的Java library用來處理Java物件與JSON字串之間的轉換
本篇將以YouBike開源資料為例實作
Gson是Google所提供的Java library用來處理Java物件與JSON字串之間的轉換
本篇將以YouBike開源資料為例實作
JSON(JavaScript Object Notation),一種基於JavaScrip表示法且用來傳輸由屬性值或者序列性的值組成的資料物件。
JSON由於它的特性,需多開源資料都支援JSON格式的表示。
解析新北市公共自行車租賃系統(YouBike)的open data
將相應資訊用RecyclerView顯示,像是站點剩餘車數、可還空位數等等
之後會以這篇範例介紹一些概念
使用Firebase的API建置帳號登錄註冊的功能,執行時會產生以下資訊
[FirebaseAuth: ] getGoogleApiForMethod() returned Gms: com.google.firebase.auth.api.internal.zzak@xxx
之後就不再運作了,跳出網路連線逾時
在網路上尋找各個可能的解法,最後發現是跟模擬器的Google Play有關
在許多編譯器內,利用英文簡寫可以打出一整行程式碼
例如常用的縮寫:sout,在Java 中即可叫出System.out.println()
,在Kotlin中可以叫出println()
在Android Studio中可以使用Live Templates設定縮寫,即可叫出對應的程式碼片段,加速開發程式的速度
官方的API文件: Add a Floating Action Button
官方的文件將建置FloatingActionButton功能的方法做了蠻清楚的描述
這邊對於相關的API和方法做更詳細地解釋和實作
FloatingActionButton通常是置於APP介面的下方,為懸浮按鈕
這邊介紹如何在專案內導入FloatingActionButton的元件
在查閱Android的API時,除了用Google搜尋外,有更方便的方式。
在Chrome瀏覽器,安裝"Android SDK Search"擴充套件
用題目來練習會對一個新語言更快進入狀況
對筆者來說,相較於Java,Kotlin是很新的語言,這裡用一個題目同時練習Java與Kotlin的部分
在Apple的筆電系統上,使用IntelliJ IDE開發Kotlin,執行時產生以下錯誤
Stream就如同一個迭代器(Iterator),單向不可往復,數據只能探取一次,探取一次後便用盡了。
詳細內容可繼續往下看。
在Java 8,介面(Interface)可以有預設的實作方法(default method)。
預設方法使用default關鍵字修飾,預設權限為public。
介面CharSequence在Java 8新增了預設方法chars()
, codePoints()
,主要用來處理字元和字元的碼位(code point)。
chars()
, codePoints()
皆輸出IntStream物件,物件內元素紀錄字元串。
在Java 8之前,隨機取數最常使用Math.randorm()的方法
在Java 8,Random類別新增很多方法來達到隨機取數,特別針對long, int, double基本型態,分別回傳LongStream、IntStream、DoubleStream
主要分為longs()
、ints()
、doubles()
三大類方法,這邊針對ints()
系列做介紹
Long, Integer, Double, Float, Boolean等類別為包裹器(wrapper),利用物件實例作為殼,將基本型態包裹在物件中。
下方為整理Integer, Double的方法,其他的類別包裹器方法類似。
(byteValue, doubleValue, floatValue, intValue, longValue, toString)
(compareTo, parseInt, valueOf)
JXL API(Java Excel API)是開源的API,使用Java專門用來處理Microsoft Office系列Excel(.xls)中活頁簿的讀取、寫入、修改和創建新的活頁簿。
他有一個小缺點,不能處理.xlsx類型的檔案,但整體上已經很夠用。
如果需要其他更完整的功能,可以用Apache POI。
JXL API download: API檔案下載
JXL API document: API文件
有兩個方法可以得到物件的型別
可以參考下方例子會更清楚。
微軟最近將Bot framework全面升級成3.0
將最新的Bot application的發佈方法做紀錄
問號在C#裡的使用,主要分為三種
//第一種
int? a = null;
//第二種
int a = (b == 1) ? c = 2 : c = 3;
//第三種
int a = (s ?? string.Empty).Length;
討論async與await