-> <-演算子は何をするのですか?
2023-10-19 16:25:33
質問
最近、以下のようなコードに出会いました。
IntPredicate neg = x -> x <- x;
なんだこれ、逆ダブルラムダみたいなもんか?
どのように解決するのですか?
には
-> <-
という演算子があります。その最初の
->
はJava 8で導入されたラムダ構文にすぎず、2番目の
<-
は「より小さい」の誤解を招くような連結です。
<
と 'unary minus' の連結です。
-
.
と読むことができます。
IntPredicate neg = (x) -> (x < (-x));
と読むことができます。
x
よりも小さいかどうかを調べます。
-x
というのは、すべて(まあ。
最も
) の負数の場合であり、そのため
neg
.
IntPredicate neg = x -> x <- x;
System.out.println(neg.test(4)); // false
System.out.println(neg.test(0)); // false
System.out.println(neg.test(-4)); // true
念のため。このテストは (意図的に?) 理解しにくいだけでなく、コメントで指摘されているように、次のように失敗します。
Integer.MIN_VALUE
(これは
==-Integer.MIN_VALUE
). 代わりに、おそらくもっとシンプルな
IntPredicate neg = x -> (x < 0);
.
関連
-
SLF4J: クラス・パスに複数のSLF4Jバインディングが含まれています。
-
java.sql.SQLException: 結果セットの開始前
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] B "の印刷が "#"の印刷より劇的に遅いのはなぜですか?
-
[解決済み] Javaはパラメータのデフォルト値をサポートしていますか?
-
[解決済み] なぜ ++[[]][+[] +[+[]] は "10" という文字列を返すのでしょうか?
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
-
[解決済み】Javaではfinallyブロックは必ず実行されるのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
mvn' は、内部または外部のコマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
-
プロジェクトの依存関係を解決できない。
-
ApplicationContextの起動エラーです。条件レポートを表示するには、アプリケーションを'de'で再実行します。
-
Javaがテキストファイルを読み込む
-
API の戻り値を処理するために ResponseEntity を使用する
-
コンストラクタDate()が未定義である問題
-
Java:未解決コンパイル問題の解決方法
-
1分でわかる!恋人の写真をIDEAの背景画像に設定する方法【おすすめ集
-
java 365*1000*60*60*24 計算問題
-
[解決済み】C/C++の"-->"演算子とは何ですか?