以下は私のデモプログラムです:
public class Demo {
public static void main(String[] args){
Demo d = new Demo();
Calendar c = Calendar.getInstance();
System.out.println("Initial : "+c.getTime());
d.addDay1(c);
System.out.println("After addDay1 call : "+c.getTime());
}
public void addDay1(Calendar d){
d.add(Calendar.DATE, 1);
}
}
私が得ている出力は次のとおりです:
Initial : Thu Mar 21 05:20:53 IST 2013
After addDay1 call : Fri Mar 22 05:20:53 IST 2013
しかし、私は次のような出力を期待しています:
Initial : Thu Mar 21 05:20:53 IST 2013
After addDay1 call : Thu Mar 21 05:20:53 IST 2013
メソッドを呼び出した後addDay1
、カレンダーオブジェクトc
のメインメソッドに日が追加されたのはなぜですか?
Javaでは、パラメータはJavaで値によって渡されますが、なぜそれが無関心に動作しているのでしょうか。
誰かが私がこれを理解するのを手伝ってもらえますか?