問題タブ [double-brace-initialize]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - new Class(...){{...}} 初期化イディオムの意味
{{ ... }}
次のコードでブロックは何を意味しますか?
java - Javaでのダブルブレースの初期化とは?
{{ ... }}
Javaのダブルブレース初期化構文( )とは?
java - Java 二重ブレースの初期化
次のオブジェクトの初期化をリファクタリングしました。
の中へ:
2 番目のサンプルでは、次の Eclipse 警告が発生します。
シリアル化可能なクラスは、long 型の static final serialVersionUID フィールドを宣言していません
これらのコード サンプルは同等であると考えていましたが、違いは何ですか?
java - JRuby での二重ブレースの初期化
JRuby を試していますが、Java の二重ブレース初期化の使用方法を理解しようとしていました。ただし、構文がどのようになるかは明らかではありません。
この例を単純にするために、以下の Java コードは要素を含むリストを作成します。
これは JRuby で可能ですか?
ArrayList.new {{}}
意味がなく、エラーが発生します: odd number list for Hash.puts ArrayList.new({{}})
。
java - Java二重ブレースの初期化は常に機能しますか?
私はこのコードを知っています:
本当に:
イニシャライザ ブロックは、コンストラクタ ブロックの前に実行されています。上記の例では、コンストラクターが実行される前に add("test1") が呼び出されます。このクラスが機能するように、コンストラクターは多くのインスタンス フィールドを初期化している可能性があります。コンストラクターが機能する前に.add()を呼び出すのはなぜですか? 問題となるケースはありますか?
java - 二重ブレースの初期化におけるメソッドパラメータ?
HashMap
関数内に二重中括弧を使用してインラインを作成しています。
そして、私はこれらのエラーを受け取っています:
Object
初期化された二重ブレースにメソッドパラメータを挿入するにはどうすればよいですか?
java - 二重ブレースの初期化と「一種の」静的匿名クラス
テストのために、クラス内に匿名のネストされたクラスを作成するクイック「ダブルブレース」初期化を使用することがありますOuter
。次に例を示します。
編集
私は、この例がOuter
インスタンスへの参照を保持しているという以前の誤ったステートメントを修正しています。そうではなく、事実上、次のものと同等です。
との両方がsSet1
、クラスsSet2
への参照を保持しない匿名のネストされたクラスで初期化されますOuter
。
これらの匿名クラスは本質的にstatic nested
クラスであるということですか?
java - 二重中括弧の初期化内で自身を参照するオブジェクトは、NPE を与えませんか?
ここにこの小さなコードがあります。これは常に NPE をスローします。
インスタンス初期化ブロックで初期化OBJECT
できる方法はありますか? または、インスタンスの初期化ブロックで可能なすべての参照はOBJECT
常に NPE をスローしますか?
西側で最速の銃を持っている人は、これを読んでください:いいえ、バグを解決するように求めているわけではありません。これは私がどこかで見た単純化されたコードであり、驚いたことに、Eclipse または Netbeans のいずれでも null 警告を出していません。
java - ネストされたコレクションでの二重ブレースの初期化
List
二重中括弧を使用してa を宣言および初期化できることはわかっています。
しかし、私はのがList
欲しい<Map<Object,Object>>
:
ネストされたコレクションで二重ブレースの初期化 ((1) を参照) を使用するにはどうすればよいですか? 私の目標は、データ構造を 1 行で宣言して初期化することです。
また、二重ブレースの初期化を使用する際に注意が必要な特定の欠点があるかどうかを知りたいです。