1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

java ラムダ式によるソート処理

Posted at

ラムダ式とは?

  • ラムダ式とは関数型インターフェイスを実装したクラスのインスタンスを、短いコーディング量で簡単に作れてしまう文法のこと

ラムダ式の使い方

  • ソート例
sample.java

	List<SearchResult> pageList; //あるモデルのリスト
	List<SearchResult> newList = new ArrayList<SearchResult>();

// pageListをソートする
// ソート条件は次の通り。ファイル更新日付 desc, ファイル名 asc, ページNo asc 
	pageList.stream().sorted(Comparator.comparing(SearchResult::getUpdate_dt_is).reversed()
			.thenComparing(SearchResult::getPureFileName)
			.thenComparing((s1, s2) -> Integer.parseInt(s1.getPageNo()) - Integer.parseInt(s2.getPageNo()))
			.forEach(i -> newList.add(i));
			

このように、ソート用のクラスを作成せずに、4,5行でソートすることができる。

ラムダ式を使った他の例はまた次回。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?