タグ

Javaとlambdaに関するchess-newsのブックマーク (4)

  • ラムダ式・Stream APIの理解のポイントは「型」 - 行きあたりばったりエンジニアの日記

    はじめに Java SE 8がリリースされて、そろそろ1年が経とうとしています。早いものです。 それはすなわち、Java SE 7のサポート切れが間近に迫っているということでもあります。 そこで今回は、改めてJava SE 8の理解のポイントを解説しようと思います。 ラムダ式・Stream APIの2点が、Java SE 8の目玉となる新機能です。 こんなコードが出てきます。 List<Emp> source = Arrays.asList( new Emp(101, "Nishida", Dept.ADMIN, 500000), new Emp(102, "Nohira", Dept.SALES, 285000), // 以下省略 ); // ラムダ式&Stream API! // EmpのListから、Deptが「SALES」の要素のみ抽出し、名前のみのListに集約する List<S

    ラムダ式・Stream APIの理解のポイントは「型」 - 行きあたりばったりエンジニアの日記
  • Java8のStreamを使いこなす - きしだのHatena

    さて、Java8で関数型っぽいことをやって遊んでみたわけですが、実際はそんな書き方しませんよね。 Java8で実際に使うのは、Streamです。 ということで、Streamの使い方をひととおり見てみます。 ※5/17 仕様変更があったので、修正しました 基 まずは、Iterableインタフェースに用意されたforEachメソッドを見てみましょう。 List<String> names = Arrays.asList("hoge hoge", "foo bar", "naoki", "kishida"); names.forEach(s -> System.out.println(s)); これで次のように表示されます。 hoge hoge foo bar naoki kishida いままでの拡張forだと次のように書いてました List<String> names = Arrays.a

    Java8のStreamを使いこなす - きしだのHatena
  • Java8 Lambdaの文法拡張まとめ - きしだのHatena

    デフォルトメソッドは前に解説しました。 Java8で最もインパクトのある構文拡張、デフォルトメソッド ここでは、それ以外の構文拡張についてまとめておきます。 ラムダ式 実装すべきメソッドがひとつだけのインタフェースを関数型インタフェースといいます。 UnaryOperatorインタフェースは実装すべきメソッドがapplyメソッドひとつだけなので、関数型インタフェースになります。 たとえば、UnaryOperatorインタフェースを実装したクラスを定義すると次のようになります。 class MyOp implements UnaryOperator<String>{ @Override public String apply(String t) { return "** " + t + " **"; } } このUnaryOperatorインタフェースを使う、List#replaceAllを

    Java8 Lambdaの文法拡張まとめ - きしだのHatena
  • Java8 Lambdaまとめ - Qiita

    引数と処理を->でつなぐだけなので、簡単にLambdaを書くことが出来る。 具体的に色々な例を下記に記載していきます。 基java8では、ほとんどのケースでfor文を使用しなくてもよいので、まずはそれを書き直す基的なやり方です。 ListでLambda List<String> stringList = new ArrayList<String>(); stringList.add("japan"); stringList.add("usa"); stringList.add("england"); for (String string : stringList) { System.out.println(string); } List<String> stringList = new ArrayList<String>(); stringList.add("japan"); st

    Java8 Lambdaまとめ - Qiita
    chess-news
    chess-news 2019/02/11
    マッチ
  • 1