例えば H2 database を以下のように起動するとめっぽう遅い java -cp h2.jar org.h2.tools.Server H2 database に限らず、Tomcat だったり Logback だったり、あらゆるものが遅い 以下にあるように InetAddress.getLocalHost() から呼ばれる DNS Lookup に原因があるようだ plumbr.eu こことか thoeni.io こことか stackoverflow.com ワークアラウンド /etc/hosts にホスト名を指定 ホスト名が MacBook-Pro の場合は以下のような感じ 127.0.0.1 localhost MacBook-Pro.local ::1 localhost MacBook-Pro.local ホスト名自体は「システム環境設定」の「共有」にあるコンピュータ名で設定
リストからマップを作る時に使う以下のコード Map<String, String> phoneBook = people.stream() .collect(Collectors.toMap(Person::getName, Person::getAddress); なつかしい以下のコードとは挙動が異なります。 Map<String, String> phoneBook = new HashMap<>(); for (Person p : people) { phoneBook.put(p.getName(), p.getAddress()); } Collectors.toMap() の場合は、キー つまり Person.getName() に重複がある場合は IllegalStateException になります。 昔ながらの Map の操作の延長で考えると、新しいもので上書きされると
はじめに Java8の新機能、Stream APIを使い始めてコーディングが格段に楽になりました。 備忘録的にサンプルコードを書き出してみました。少しずつ追加していく予定です。 Javaは使ったことあるけどラムダ式やStream APIはよく知らないという方は、参考にしてみてください。 バリバリ使っている方は、こんな使い方もあるよ!と教えていただけると嬉しいです。 ちなみにオライリー社のJavaによる関数型プログラミング ―Java 8ラムダ式とStreamがとても参考になりました。 【前提条件】Stream APIの説明に使用するオブジェクト public class Person { private String name; private int age; private List<Person> children; public Person(String name){/*...*
Iterator から Stream を得る 配列から Stream を得る Enumeration から Stream を得る 文字列を split した結果から Stream を得る 乱数 Stream を得る 数列の無限 Stream を得る org.w3c.dom.NodeList からStreamを得る ソート済みの Stream を得る Iterator から Stream を得る Iterable に変換してから Stream を得ることができます。 Iterator<String> sourceIterator = Arrays.asList("A", "B", "C").iterator(); Iterable<String> iterable = () -> sourceIterator; Stream<String> targetStream = StreamSupp
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く