目次 はじめに Collectorを作る Collectorを楽に使う Collectorをまとめる Collectorから生成する はじめに Java 8以降Stream APIはfor文に代わり広く使われる Streamには終端処理がセットになり、その代表がcollectメソッド collectメソッドの引数がjava.util.stream.Collector Collectorを作る // ArrayListに変換するCollector Collector<T, ?, List<T>> toArrayList = Collector.of( ArrayList::new, List::add, (l1, l2) -> { l1.addAll(l2); return l1; }, Characteristics.IDENTITY_FINISH); // 実行 .stream().co
Javaコードを書いていて、for each 内で、Mapのremoveを行いjava.util.ConcurrentModificationExceptionエラーになるのをすっかり忘れてました。 エラーになるコード HashMap<String, String> map = new HashMap<String, String>(); map.put("k1", "v1"); map.put("k2", "v2"); map.put("k3", "v3"); for(String k : map.keySet()){ if( k.endsWith("2")){ map.remove(k); } } エラーにならないコード HashMap<String, String> map = new HashMap<String, String>(); map.put("k1", "v1"); m
一人でプログラムを書いてたりすると、環境によってはあまりコードの書き方には指摘を受けなくて困りますよね。プロになっても、曲がりなりにもちゃんと動くコードを書けてしまうとあまりに当たり前のことなんかは指摘されることも稀で、そのままある程度偉くなっちゃった日には、もはや自分で気付くしかなくなってしまいます。 FindBugsとか、Effective Javaなら使ったり読んでみたり読ませたりすることはできますが、それ以前のところって難しいんですよね。よいコードと言うよりそれが当たり前だと思われているので、指摘するにしても「こうすればいいよ」(アドバイス)じゃなくて「なんでこうしてないの?」(詰問)になってしまいがちです。 そこで、最近そういうJavaニュービーに指摘している(したい)ことの多い、Javaの基礎的な事柄をまとめてみました。ワタシJavaチョットデキルって人は、これ以外にもやりがち
配列やコレクションを使わずにInputStream等からStreamを作成する方法。 Stream.of(T... values) 可変長引数で要素を指定してStreamを作成する。 テストデータやサンプル作成でよく使う。 Stream<String> stream = Stream.of("a", "b"); stream.forEach(System.out::println); Stream.Builder<Integer> builder = Stream.builder(); for (int i = 0; i < 5; i++) { builder.add(i); } Stream<Integer> stream = builder.build(); stream.forEach(System.out::println);
import java.text.NumberFormat; public class NumberFormatSample { public static void main(String args[]) { //NumberFormatインスタンスを生成 NumberFormat nfNum = NumberFormat.getNumberInstance(); //カンマ区切り形式 NumberFormat nfCur = NumberFormat.getCurrencyInstance(); //通貨形式 NumberFormat nfPer = NumberFormat.getPercentInstance(); //パーセント形式 //指定した値をフォーマットして表示する System.out.println(nfNum.format(12345.6789)); System.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く