CUBは子供の白熊

Java SE 8 実践プログラミングの練習問題を解く

2016-05-01から1ヶ月間の記事一覧

第8章 その他の Java 8 機能を理解する : 問題 6 : Comparator の合成

問題 Comparatorインターフェースのメソッドだけを使ってjavafx.geometry.Point2Dの全順序(Total Ordering)な Comparator を定義せよ。 “全順序” とは、同値なオブジェクトに対してのみゼロを返す Comparator のことである。 解答 X座標の Comparator とY…

第8章 その他の Java 8 機能を理解する : 問題 5 : Stream vs Collection

問題 “第2章 ストリーム API の使い方” で、Listの中の長い単語を Stream を使って数えた。 List<String> words = ~; long count = words.stream() .filter(w -> w.length > 12) .count(); ラムダ式は用いるが Stream を使用しないで同じことを行え。 解答 java.uti</string>…

第8章 その他の Java 8 機能を理解する : 問題 4 : Random はゼロを生成するか?

問題? Math.nextDown(x)メソッドは、何らかのランダムな処理が x に正確に一致した場合に、x よりも次に小さな浮動小数点を返します。 これにより、返された数が x より小さいことが保証されます。 これは本当に保証できるのでしょうか? ちょっと待った! 上…

第8章 その他の Java 8 機能を理解する : 問題 3 : ユークリッドの互除法

問題 ユークリッドの互除法で、2つの整数の最大公約数を求めよ 2つ整数のどちらかが負でも、最大公約数は正の数になる(なぜなら反数も約数であり、正数の方が大きいからである) そして余りの計算に % Math.floorMode(int, int) 数学的な剰余計算(余りは常…