0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Java入門時のリンク集&メモ(超自分用)

Last updated at Posted at 2019-11-20

Javaの学習をしたときに参考にしたサイト(超個人的な備忘メモです。。。)

Samurai Blog様

デザインパターン(TECHSCORE様)

Tips

returnでのインクリメント/デクリメント

こんなとき

Main.java
class SampleClass {
    private int member1=0;

    public int incrementLocal1(int local){
        return local++;
    }
}
public class Main {
  public static void main(String[] args){
    SampleClass sc = new SampleClass();
     System.out.println("ローカル変数: " + sc.incrementLocal1(0));
  }
}

実行結果
→ローカル変数:1を期待したが・・・

ローカル変数: 0

インクリメントされた値が返ってこないので見直し。

Main.java
class SampleClass {
    private int member1=0;

    public int incrementLocal1(int local){
        //return local++;
        return ++local;  //インクリメント演算子を変数の前に記述。
    }
}
public class Main {
  public static void main(String[] args){
    SampleClass sc = new SampleClass();
     System.out.println("ローカル変数: " + sc.incrementLocal1(0));
  }
}

実行結果

ローカル変数: 1

ということで、インクリメント演算子/デクリメント演算子について

変数の前に記述すると「処理の開始時にインクリメント/デクリメント」

イメージ
i=i+1;
return i;

変数の後に記述すると「処理の終了後にインクリメント/デクリメント」

イメージ
return i;  //インクリメントされる前の値がreturnされる
i=i+1;
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?