問題タブ [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 に答える
144 参照

perl - スカラー コンテキストでの Perl ARGV 値

次の Perl スクリプトがあるとします。

これは出力です:

の出力に困惑していますprint "$ARGV\n"。しようとするprint "$ARGV[-1]\n"と、空の行が STDOUT に出力されます。を直接参照する$ARG[2]と、同様に空の行が表示されます。

を使用するとスクリプトが印刷されるのはなぜfile4ですか$ARGV?

反例として、print "$d\n"の最後の行を取得することを期待して、 を試しましたfile4。予想される出力の代わりに、空の行が表示されました。どのように機能し$ARGVますか?

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

java - Java-Diamond 型は、この言語レベルではサポートされていません

Java プロジェクトの作業を開始したばかりで、IntelliJ を使用して GitHub からソース コードをダウンロードしました。これまで IntelliJ を使用したことはありませんが、Eclipse よりもはるかに優れた IDE であると言われています (これは私が使用していたものです)。最後に Java 開発を行ったのは約 4 年前です)。

GitHub から最新の作業バージョンをプルして、自分のコンピューターでローカルにソースをビルドしようとすると、いくつかの異なるコード行でコンパイル エラーが発生します。エラーには次のように表示されます。

エラー:(27, 34) java: ダイヤモンド演算子は -source 1.5 ではサポートされていません (ダイヤモンド演算子を有効にするには -source 7 以上を使用してください)

これらのコンパイル エラーが表示される行は、次のような行です。

行を選択しAlt + Enterてエラーを実行すると、できることを示すメッセージが表示されます

「言語レベルを 7 に設定します - Diamonds、ARM、Multi-cache など」

ただし、このオプションを選択しても何も起こりません...

pom.xmlファイルには、次の xml があります。

しかし、このエラーを調べたところ、ダイヤモンド型はこの言語レベルではサポートされていませんでした。これは、maven1.7 以上を使用する必要があることを示しており、プロジェクトは既にバージョン 1.8 を使用しているようです。このコンパイルエラーが発生する理由がわかりません...

誰にも提案はありますか?

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

java - JDK 1.6 のダイヤモンド構文代替

JDK 1.6 で動作するように、以下のコードを書き直す方法を誰か提案できますか?