有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java错误:找不到符号方法add(Date,int)

I have this code:
import javax.swing.JOptionPane;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.*;
import java.text.*;

    public class BillionSeconds {

        public static void main(String[] args)
        {
            Date thedate ;


            String Birthday = JOptionPane.showInputDialog("What is your birthday in the form dd-MM-yy");

            DateFormat dateFormat = new SimpleDateFormat("dd/MMM/yy");
            try{
            thedate = dateFormat.parse(Birthday);
            }
            catch (Exception e) {
                System.out.println("Unable to parse date stamp");
            }
            Date newdate = thedate.add(thedate, 1);
        }
    }

但我得到了这个错误,我不知道为什么:

error: cannot find symbol method add(Date,int)

共 (3) 个答案

  1. # 1 楼答案

    add(thedate, 1);

    Calendar Class而不是{}中有一个add()方法

    例如:

    Calendar desiredDate = toDay.add(Calendar.DATE, 4);

  2. # 2 楼答案

    是的,那是因为^{}没有add方法。你凭什么认为是这样的

    听起来您可能正在考虑^{}类,尽管您希望:

    Calendar nextDay = currentDay.add(Calendar.DATE, 1);
    

    。。。这可不是一回事

    不过,我强烈建议您完全放弃DateCalendar,而是开始使用Joda Time,这是一个非常好的日期/时间API

    请注意,您还应该得到一个编译时错误,说明由于您的“捕获并继续”错误处理,thedate可能尚未初始化

  3. # 3 楼答案

    正如它所说,java中没有add方法。util。日期 你可能想看看^{}。它有你需要的智能方法。或者更好,使用第三方库JodaTime