我有一个类,它接受一个日历对象并打印出当前日期。打印当前日期后,它会提供打印上一个或下一个日期的选项,但上一个和下一个日期不能正常工作。
public void viewDate(Calendar greg) {
//greg is a GregorianCalendar passed in from classA
Calendar cal = new GregorianCalendar();
Scanner in = new Scanner(System.in());
cal = greg.getInstance();
//print current date
System.out.println("P or N");
char request = input.nextLine().charAt(0);
if(request == 'P') {
cal.add(Calendar.DATE, -1);
System.out.println(cal.get(Calendar.DAY_OF_MONTH));
viewDate(cal);
{//else next...
更改当前日期-1并打印后,我可以看到日期已经改变了一天,但是当我将cal传回方法时,它不会保存该更改。为什么呢?