--演算子
日本語 | 引く引く演算子 |
英語 | minus minus operator |
ふりがな | まいなすまいなすえんざんし |
フリガナ | マイナスマイナスエンザンシ |
1減らす演算子。
単項演算子のひとつ。「--変数;」「変数--;」といった形式で整数値型や浮動小数点型に使用することで1減らすことができる。
実際に変数の中身が書き換えられる。
演算子の「戻り値」は変数そのもののため、この変数をそのまま使用することができる。
正確には、「--変数;」と「変数--;」とでは別の演算子であり、1減るタイミングが異なる。
演算子の右に変数がある「--変数;」形式を「プリデクリメント演算子」と呼び、評価した時に即座に1減る。
演算子の左に変数がある「変数--;」形式を「ポストデクリメント演算子」と呼び、こちらは評価した時には変化せず、次の行に移る直前に1減る。
1減るタイミングが異なるだけで、1減る事には代わりはない。ポストデクリメント演算子に明確な使い道はないため、バグ回避のためにもポストデクリメント演算子の使用は控えた方がいいだろう。
1増やす演算子は「++演算子」である。
単項演算子のひとつ。「--変数;」「変数--;」といった形式で整数値型や浮動小数点型に使用することで1減らすことができる。
実際に変数の中身が書き換えられる。
演算子の「戻り値」は変数そのもののため、この変数をそのまま使用することができる。
正確には、「--変数;」と「変数--;」とでは別の演算子であり、1減るタイミングが異なる。
演算子の右に変数がある「--変数;」形式を「プリデクリメント演算子」と呼び、評価した時に即座に1減る。
演算子の左に変数がある「変数--;」形式を「ポストデクリメント演算子」と呼び、こちらは評価した時には変化せず、次の行に移る直前に1減る。
1減るタイミングが異なるだけで、1減る事には代わりはない。ポストデクリメント演算子に明確な使い道はないため、バグ回避のためにもポストデクリメント演算子の使用は控えた方がいいだろう。
1増やす演算子は「++演算子」である。
参考サイト
- (参考サイトはありません)
// Sample.java
public class Sample
{
public static void main( String[] args )
{
int i = 100;
System.out.println( i );
// 100
// デクリメントします。
--i;
System.out.println( i );
// 99
// --演算子は、変数の前に付けるか後で付けるかで
// いつ実行されるか変わります。
System.out.println( --i );
System.out.println( i );
// 98
// 98
System.out.println( i-- );
System.out.println( i );
// 98
// 97
// 浮動小数点型でも同様に使用できます。
double d = 12.5;
System.out.println( d );
// 12.5
--d;
System.out.println( d );
// 11.5
// boolean型には使用できません。
boolean b = true;
// --b;
// コンパイルエラー:
// 型の不一致: boolean から int には変換できません。
}
}
public class Sample
{
public static void main( String[] args )
{
int i = 100;
System.out.println( i );
// 100
// デクリメントします。
--i;
System.out.println( i );
// 99
// --演算子は、変数の前に付けるか後で付けるかで
// いつ実行されるか変わります。
System.out.println( --i );
System.out.println( i );
// 98
// 98
System.out.println( i-- );
System.out.println( i );
// 98
// 97
// 浮動小数点型でも同様に使用できます。
double d = 12.5;
System.out.println( d );
// 12.5
--d;
System.out.println( d );
// 11.5
// boolean型には使用できません。
boolean b = true;
// --b;
// コンパイルエラー:
// 型の不一致: boolean から int には変換できません。
}
}
// Sample.java public class Sample { public static void main( String[] args ) { int i = 100; System.out.println( i ); // 100 // デクリメントします。 --i; System.out.println( i ); // 99 // --演算子は、変数の前に付けるか後で付けるかで // いつ実行されるか変わります。 System.out.println( --i ); System.out.println( i ); // 98 // 98 System.out.println( i-- ); System.out.println( i ); // 98 // 97 // 浮動小数点型でも同様に使用できます。 double d = 12.5; System.out.println( d ); // 12.5 --d; System.out.println( d ); // 11.5 // boolean型には使用できません。 boolean b = true; // --b; // コンパイルエラー: // 型の不一致: boolean から int には変換できません。 } }