Android ソース コードに見慣れない表記があります。*=
例えば:density *= invertedRatio;
私はスターイコール表記法に慣れていません。誰かがそれを説明できますか?
Java では、*=乗算複合代入演算子と呼ばれます。
のショートカットです
density = density * invertedRatio;
同じ省略形が可能です:
String x = "hello "; x += "world" // results in "hello world"
int y = 100; y -= 42; // results in y == 58
等々。
density *= invertedRatio;の短縮版ですdensity = density * invertedRatio;
この表記法は C に由来します。
これは省略形の代入演算子です。次の形式を取ります。
variable op= expression;
の短縮形です
variable = variable op expression;
そう、
density *= invertedRatio;
と同等です
density = density * invertedRatio;
詳細については、次のリンクを参照してください。
Daが言ったように、それは略語ですdensity = density * invertedRatio;-それはAndroid固有のものではなく、標準のJavaです。これ (および同様の演算子) は、C に似た構文を持つ多くの言語で見られます。