もっと Lambda その5

早いものでもう五月なんですね。

世間一般はゴールデンウィークなんでしょうが私はまだまだ働かなくてはいけません。

明日の夜勤(長時間)が終われば世間一般より短いけどゴールデンウィークが始まります。

だから何かイベントがあるのかって言われると何もないですね。

運転手 + 召使い + α で隙をみてゴロゴロするくらいかな。

さて、世間がゴールデンウィークに浮かれている今日この頃ですが今日のブログネタはいつもの Java8 の新機能です。

これは Twitter 上でつぶやかれていたネタです。

Twitter と言えばまだベーシック認証が使える頃に自分用のクライアントを作りかけていた時にアカウントをとってました。

ある日突然ベーシック認証が使えなくなりそれでクライアントの制作中止と Twitter 自体も使ってない状態だったのですが、何気に再開したら美味しい情報もあるので復活中です。

今回のネタはわずか 140 文字以内という制限の Twitter からいただきました。

1 から 10 まで表示させるだけのプログラムです。

package jp.yucchi.pkg1_to_10;

import java.util.stream.Streams;

public class One2Ten {

    public static void main(String[] args) {
        Streams.intRange(1, 11).forEach(System.out::println);
    }
    
}

これってありなんですかね?

実行結果は次のようになります。

1
2
3
4
5
6
7
8
9
10

All’s well that ends well. なんてねw

JavaDoc をサラッと・・・ 今回は優秀な翻訳支援ソフトを使わないのでご自分で翻訳するかお気に入りの翻訳ソフトをつかってね(ヲヒ

 

Streams

java.​util.​stream

public final class Streams extends Object

Utility methods for operating on and creating streams.

Unless otherwise stated, streams are created as sequential streams. A sequential stream can be transformed into a parallel stream by calling the parallel() method on the created stream.

日付:

1.8

 

intRange()

java.​util.​stream.​Streams

public static IntStream intRange(int start, int end)

Creates a sequential IntStream from start (inclusive) to end (exclusive) by an incremental or decremental step of 1.

パラメータ:

start – the (inclusive) initial value
end – the exclusive upper bound

戻り値:

A sequential IntStream for a range of int elements

 

Twitter でも Good な情報を入手できることが嬉しい!

それでは、お約束の時間です。

この「もっと Lambda 」シリーズは、インターネット上で得た情報を元にそれを少し変更しているだけです。

悲しいことにその情報源は英語なので詳しい内容はわかりません。

よって私の推測で解釈された内容となってますので間違いがあると思います。

Java8 もまだ build86 を使用していますので API の変更により記述方法が変わるかもしれません。

早く正式リリースされて日本語でこの超便利で素敵な新機能を勉強したい今日この頃です。

 

Hatena タグ:

Java 8 Date and Time API の素敵なコード その2

以前に 「Java 8 Date and Time API の素敵なコード」というタイトルをエントリーした。

今回はちょっとだけ感動を覚えるコードを紹介します。

なんと日本の Java Programmer の胸を熱くすること間違い無しのこれだ!

package jp.yucchi.displayera;

import java.time.chrono.JapaneseChronology;

public class DisplayEra {
    

    public static void main(String[] args) {
        JapaneseChronology.INSTANCE.eras().stream().forEach(System.out::println);
    }

}

そして我々は胸を熱くするであろう出力結果をみることになる。

Seireki
Meiji
Taisho
Showa
Heisei

慶応はさすがに無いけど十分だ!

Java8 ありがとう! 私は来年の3月18日まで首を長くして待ってるよ。(*^o^*)

Technorati タグ: