問題タブ [diamond-operator]

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.

0 投票する
1 に答える
570 参照

java - 型パラメーターは、ジェネリック オブジェクトのインスタンス化のコンストラクターで役立ちますか?

Java 7以降、インスタンス化中にコンストラクターでジェネリッククラスの型を繰り返すことは冗長であることを知っています。しかし、ひし形演算子 <> はどうですか? オプションで繰り返すことができますか? 言い換えれば、これの違いは何ですか?

この

またはこれ

この

前もって感謝します

0 投票する
3 に答える
8942 参照

java - ダイヤモンド演算子を使用したワイルドカード

私がこのようなことをしようとしている場合:

その後、コードは正常にコンパイルおよび実行されますが、どのタイプArrayList作成されたのでしょうか?

そして、この行の後、私がこのようにした場合:

コンパイルエラーが発生します:

このエラーは何ですか?ワイルドカードでダイヤモンド演算子を使用するのは適切ですか? はいの場合、どこで???

0 投票する
2 に答える
9585 参照

java - Java 7 ダイヤモンド演算子と派生クラスによる初期化

ジェネリックを使用して作成されたオブジェクトを保持するための Holder クラスがあります。main() では、ダイヤモンド演算子を使用して初期化すると、ホルダーのコンストラクターに渡された派生クラスでコンパイルされません (Java 7) (必要な A / 見つかった B):

ただし、基本型が右側の部分で指定されている場合は、コンパイルして機能します。

なんで?ダイヤモンド演算子は、左側と同じ型パラメーターを使用して割り当ての右側を定義していませんか?

0 投票する
1 に答える
249 参照

java - IDEA で -source を使用する方法

どうすればこれを修正できますか? コードをコンパイルしようとすると、次のメッセージが表示されます。


私のPCにはこの設定があり、IDEAを使用しています:

それをコンパイルするには正確に何をすべきですか?「-source 7」はどこに配置すればよいですか?

0 投票する
0 に答える
1233 参照

java - Java 1.7 での非論理的なコンパイル エラー: '<>' 演算子

私はEclipse EE IDE 2.0.1で作業しており、2つのJavaプロジェクトAとBがあります。プロジェクトBはjarファイルとしてプロジェクトAに追加されます。プロジェクトAはTomcatサーバーで実行されます。

A を実行しているときに、A が B にアクセスするとすぐに例外が発生します。

(1) 両方のプロジェクトのプロジェクト ファセットと Java コンパイラを 1.7 に設定しました。サーバー ランタイム環境も 1.7 です。ここで説明されているすべての手順を含め、見つけることができるすべてのものを Java 1.7 に設定しました: Diamond operator(<>) not working in Java 1.7

(2) 私のコードのどこにも '<>' 演算子はそのように存在しません。私は常に、菱形の括弧内で型を定義します。(例外のスクリーンショットを参照) ここに画像の説明を入力

だから今、私は間違いが私のソースコードにあるとは思わない...しかし、ここで何が起こっているの??

編集:プロジェクト B を実行しただけでは、そのようなエラーは発生しません。