Java8
知らなくても生きていけるけど、知ってるとちょっと便利っぽいもの。 みんな知ってるのかもしれないけど、私は今日まで知らなかったから書いておきます。 もともとは今日 @khasunuma さんがされていた一連のツイートからです。その中で紹介されたスライドに…
JavaSE8で追加されたjava.util.Optionalにはnullとの戦いに終止符を打ってもらいたいと思っているんですが、思ってるだけだと何も起こらないので、使い方とか思ったこととかを一通り書いておきます。 Optionalのファクトリメソッド Optionalのインスタンスメ…
4年前に書いたリストを項目ごとに集計するというエントリを見つけたので、なんとなく今風にStream使って書いてみた。 Collection<Output> summary(List<Input> data) { return data -> { Map<String, List<Input>> collected = data.stream() .collect(groupingBy(Input::getKey)); return colle</string,></output>…
Javaの古きアレなプラクティスの1つに、ユーティリティクラス*1をabstractで作成すると言うのがある。 public abstract class SomeUtil { public static String appendA(String str) { return str + "a"; } } ユーティリティメソッドappendAは、特に役に立…
去る2014/7/12は関西Javaエンジニアの会スペシャル! Java 8リリースでした。JavaSE8に関するアレコレでぎっしり、実に充実した一日でした。さて、その中でインタフェースにdefaultメソッドが定義できるようになった結果、起こるのじゃないかと危惧されたダ…
JEP 118: Access to Parameter Names at Runtime http://download.java.net/jdk8/docs/api/java/lang/reflect/Parameter.html#getName() Java8で実行時に Parameter#getName でメソッドの引数の名前がとれる感じです。 やってみる こんなクラスのー public c…
The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 335 2013年にリリースされる予定のJavaSE8に入る内容を書いてます。Early Draft Review 2です。まだ変わるかもしれません。「違ったじゃん」と言われても知りま…
Java8のラムダさん、コレクションの操作ばかりに目が行ってたけどリソースのオートクローズとかええんちゃうん。ええんちゃうん2013-01-02 18:08:15 via YoruFukurouなるほど、確かに AutoCloseable は Functional Interface だ。 public interface AutoClos…
関西ジャバで「どうでもいい」と言われた Lambda の書き方をさくっと書いておきます。 JSR-000335 Lambda Expressions for the Java Programming Language - Early Draft Review 2 「来年の事を言えば鬼が笑う」とか言いますが、もう今年なんで大丈夫です*1…
Java Advent Calendar 2012 : ATND 前: Java - GuavaのSupplierで簡単キャッシュ - Qiita 次: mike、mikeなるままに…: 今更だけど、Javaの勉強方法まとめてみた #jjug JavaAdventCalendar2012の24日目。カレンダーなんで日付のです。24日とかただの日だし。1…
Java SE 8 でようやく Project Lambda が入ります。何が嬉しいかってーと内部イテレーターですね。内部イテレーターってそのオブジェクトの中でぐるんぐるんするんで、外からは「この処理をしてくださいな」と渡す必要があります。それを簡単に書けるように…