Skip to content

Commit 32604bb

Browse files
authored
Merge pull request #87 from javaevolved/copilot/fix-261976795-1159421298-6b6db39f-d2d4-408b-8d25-30acb21dcf98
Add Japanese (日本語) locale
2 parents 5a51e5c + 6310950 commit 32604bb

File tree

114 files changed

+1985
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+1985
-0
lines changed

html-generators/locales.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
en=English
33
es=Español
44
pt-BR=Português (Brasil)
5+
ja=日本語
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: Collectors.teeing()
2+
oldApproach: 2回のパス
3+
modernApproach: teeing()
4+
summary: "単一のストリームパスで2つの集計を計算する。"
5+
explanation: "Collectors.teeing()は各要素を2つの下流コレクターに送り、結果をマージします。データを2回ストリーム処理したり、変更可能なアキュムレータを使ったりする必要がなくなります。"
6+
whyModernWins:
7+
- icon: ""
8+
title: シングルパス
9+
desc: "ストリームを2回ではなく1回処理します。"
10+
- icon: "🧩"
11+
title: 組み合わせ可能
12+
desc: "マージャー関数で任意の2つのコレクターを組み合わせます。"
13+
- icon: "🔒"
14+
title: 不変な結果
15+
desc: "レコードや値オブジェクトに直接マージします。"
16+
support:
17+
description: "JDK 12(2019年3月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: コレクションの不変コピー
2+
oldApproach: 手動コピー+ラッピング
3+
modernApproach: List.copyOf()
4+
summary: "1回の呼び出しでコレクションの不変コピーを作成する。"
5+
explanation: "List.copyOf()、Set.copyOf()、Map.copyOf()は既存のコレクションの不変スナップショットを作成します。ソースがすでに不変コレクションである場合、コピーは作成されません。"
6+
whyModernWins:
7+
- icon: ""
8+
title: スマートコピー
9+
desc: "ソースがすでに不変の場合はコピーをスキップします。"
10+
- icon: "📏"
11+
title: 1回の呼び出し
12+
desc: "ArrayListの手動構築+ラッピングは不要です。"
13+
- icon: "🛡️"
14+
title: 防御的コピー
15+
desc: "元のコレクションへの変更はコピーに影響しません。"
16+
support:
17+
description: "JDK 10(2018年3月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: 不変リストの作成
2+
oldApproach: 冗長なラッピング
3+
modernApproach: List.of()
4+
summary: "不変リストを一つのシンプルな式で作成する。"
5+
explanation: "List.of()は真の不変リストを作成します。ラッピングも防御的コピーも不要です。nullを受け付けず(null要素を拒否)、構造的に不変です。従来の方法では3つのネストした呼び出しが必要でした。"
6+
whyModernWins:
7+
- icon: "📏"
8+
title: 1回の呼び出し
9+
desc: "3つのネストした呼び出しを単一のファクトリメソッドに置き換えます。"
10+
- icon: "🔒"
11+
title: 真の不変性
12+
desc: "ラッパーではなく、リスト自体が不変です。"
13+
- icon: "🛡️"
14+
title: null安全
15+
desc: "作成時にnull要素を拒否し、早期に失敗します。"
16+
support:
17+
description: "JDK 9(2017年9月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: 不変マップの作成
2+
oldApproach: マップビルダーパターン
3+
modernApproach: Map.of()
4+
summary: "ビルダーなしでインラインに不変マップを作成する。"
5+
explanation: "Map.of()はキーと値のペアをインラインで受け取り、不変マップを返します。10件を超えるエントリには、Map.entry()ペアと共にMap.ofEntries()を使用します。"
6+
whyModernWins:
7+
- icon: "📏"
8+
title: インライン作成
9+
desc: "一時的な変更可能マップは不要です。"
10+
- icon: "🔒"
11+
title: 不変な結果
12+
desc: "作成後にマップは変更できません。"
13+
- icon: "🚫"
14+
title: nullキー・値なし
15+
desc: "nullエントリは即座に拒否されます。"
16+
support:
17+
description: "JDK 9(2017年9月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: 不変セットの作成
2+
oldApproach: 冗長なラッピング
3+
modernApproach: Set.of()
4+
summary: "単一のファクトリ呼び出しで不変セットを作成する。"
5+
explanation: "Set.of()はnullと重複要素を作成時に拒否する真の不変セットを作成します。変更可能なセットをラッピングする必要はもうありません。"
6+
whyModernWins:
7+
- icon: "📏"
8+
title: 簡潔
9+
desc: "3つのネストした呼び出しの代わりに1行で済みます。"
10+
- icon: "🚫"
11+
title: 重複検出
12+
desc: "誤って重複要素を渡すと例外をスローします。"
13+
- icon: "🔒"
14+
title: 不変
15+
desc: "作成後に追加・削除はできません。"
16+
support:
17+
description: "JDK 9(2017年9月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: Map.entry()ファクトリ
2+
oldApproach: SimpleEntry
3+
modernApproach: Map.entry()
4+
summary: "シンプルなファクトリメソッドでマップエントリを作成する。"
5+
explanation: "Map.entry()は冗長なAbstractMap.SimpleEntryコンストラクタを置き換えます。不変エントリを返すため、Map.ofEntries()やストリーム操作に最適です。"
6+
whyModernWins:
7+
- icon: "📏"
8+
title: 簡潔
9+
desc: "3行の代わりに1行で、意図がより明確です。"
10+
- icon: "🔒"
11+
title: 不変
12+
desc: "返されたエントリは変更できません。"
13+
- icon: "🧩"
14+
title: 組み合わせ可能
15+
desc: "大きなマップ向けにMap.ofEntries()と完璧に連携します。"
16+
support:
17+
description: "JDK 9(2017年9月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: リストの逆順イテレーション
2+
oldApproach: 手動ListIterator
3+
modernApproach: reversed()
4+
summary: "クリーンな拡張forループでリストを逆順にイテレートする。"
5+
explanation: "SequencedCollectionのreversed()メソッドはリストの逆順ビューを返します。このビューは元のリストに裏打ちされているため、コピーは発生しません。拡張forループ構文により、逆順イテレーションが順方向と同じくらい読みやすくなります。"
6+
whyModernWins:
7+
- icon: "📖"
8+
title: 自然な構文
9+
desc: "冗長なListIteratorの代わりに拡張forループを使用します。"
10+
- icon: ""
11+
title: コピーなし
12+
desc: "reversed()はビューを返すため、パフォーマンスオーバーヘッドはありません。"
13+
- icon: "🧩"
14+
title: 一貫したAPI
15+
desc: "List、Deque、SortedSetに統一して動作します。"
16+
support:
17+
description: "JDK 21 LTS(2023年9月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: シーケンスドコレクション
2+
oldApproach: インデックス算術
3+
modernApproach: getFirst/getLast
4+
summary: "クリーンなAPIメソッドで先頭・末尾要素と逆順ビューにアクセスする。"
5+
explanation: "SequencedCollectionはgetFirst()、getLast()、reversed()、addFirst()、addLast()をList、Deque、SortedSet、LinkedHashSetに追加します。size()-1の計算や手動の逆順イテレーションはもう不要です。"
6+
whyModernWins:
7+
- icon: "📖"
8+
title: 自己文書化
9+
desc: "getLast()はget(size()-1)より明確です。"
10+
- icon: "🔄"
11+
title: 逆順ビュー
12+
desc: "reversed()はビューを返すため、コピーは不要です。"
13+
- icon: "🧩"
14+
title: 統一されたAPI
15+
desc: "List、Deque、SortedSetで同様に動作します。"
16+
support:
17+
description: "JDK 21 LTS(2023年9月)以降、広く利用可能"
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
title: 型付きストリームのtoArray
2+
oldApproach: 手動配列コピー
3+
modernApproach: toArray(ジェネレータ)
4+
summary: "メソッド参照を使ってストリームを型付き配列に変換する。"
5+
explanation: "toArray(IntFunction)メソッドはストリームから適切に型付けされた配列を作成します。ジェネレータ(String[]::new)は、ストリームが作成する配列の型を指定します。"
6+
whyModernWins:
7+
- icon: "🎯"
8+
title: 型安全
9+
desc: "Object[]のキャストなしで、配列の型が正確です。"
10+
- icon: "🔗"
11+
title: 連鎖可能
12+
desc: "任意のストリームパイプラインの末尾で動作します。"
13+
- icon: "📏"
14+
title: 簡潔
15+
desc: "手動ループを1つの式に置き換えます。"
16+
support:
17+
description: "JDK 8(2014年3月)以降、広く利用可能"

0 commit comments

Comments
 (0)