[Java] 介面CharSequence在Java 8的預設實作方法: chars(), codePoints()

在Java 8,介面(Interface)可以有預設的實作方法(default method)。

預設方法使用default關鍵字修飾,預設權限為public。

介面CharSequence在Java 8新增了預設方法chars(), codePoints(),主要用來處理字元和字元的碼位(code point)。

chars(), codePoints()皆輸出IntStream物件,物件內元素紀錄字元串。

 

...繼續閱讀 »

[Java] 隨機 亂數取數 Random, Math.random()

在Java 8之前,隨機取數最常使用Math.randorm()的方法

在Java 8,Random類別新增很多方法來達到隨機取數,特別針對long, int, double基本型態,分別回傳LongStream、IntStream、DoubleStream

主要分為longs()ints()doubles()三大類方法,這邊針對ints()系列做介紹

...繼續閱讀 »

[Java] 基本型態包裹器 (Wrapper)

Long, Integer, Double, Float, Boolean等類別為包裹器(wrapper),利用物件實例作為殼,將基本型態包裹在物件中。

下方為整理Integer, Double的方法,其他的類別包裹器方法類似。

 

(byteValue, doubleValue, floatValue, intValue, longValue, toString)

(compareTo, parseInt, valueOf)

...繼續閱讀 »

[Java] instanceof & getClass

有兩個方法可以得到物件的型別

  1. instanceof,除了可以得到物件的型別,也可以得到物件的繼承關係。
  2. getClass搭配equals,只能判斷物件與類別的直接關係,不能判斷物件的繼承關係。

可以參考下方例子會更清楚。

...繼續閱讀 »