0

メイン メソッドの文字列を別のメソッドの整数に変換したいのですが、エラーが発生します。

`    public static void main(String[] args) 
 {

      System.out.println("Enter a date (use the format -> (MM/DD/YYYY)");

      //declare Scanner
      Scanner in = new Scanner (System.in);

      System.out.println("Enter a month (MM): ");
      String month = in.nextLine();

      System.out.println("Enter a day (DD): ");
      String day = in.nextLine();

      System.out.println("Enter a year (YYYY): ");
      String year = in.nextLine();

    String enteredDate = month + "/" + day + "/" + year;

    if (main.isValidDate(enteredDate))
      {
        main.leapYearCheck();
    }
}

private boolean isValidDate(String enteredDate) 
 {
    //logic
    parsedDate = null;// if it's valid set the parsed Calendar object up.
    return true;
}

// other code

private void leapYearCheck(String year) 
 {
        //leapyear
        int theYear = Integer.parseInt(year);

        if (theYear < 100) 
        {
            if (theYear > 40) 
            {
                theYear = theYear + 1900;
            }
            else 
            {               
                theYear = theYear + 2000;
            }
        }

        if (theYear % 4 == 0) 
        {
            if (theYear % 100 != 0) 
            {
                System.out.println(theYear + " is a leap year.");
            }
            else if (theYear % 400 == 0) 
            {
                System.out.println(theYear + " is a leap year.");
            }
            else 
            {
                System.out.println(theYear + " is not a leap year.");
            }
        }
        else 
        {
            System.out.println(theYear + " is not a leap year.");
        }
}//end of leap year

//other code }`

エラーが発生します: Date.java:31: error: method leapYearCheck in class Date cannot be applied to given types; main.leapYearCheck(); ^ required: String found: no arguments reason: actual and formal argument lists differ in length 1 error

このエラーがわかりません。文字列が必要だと言いますが、メソッドは整数を使用するため (私は理解しています)、文字列を返す必要がありますか?? どうすればこれを修正できますか?

4

2 に答える 2

1

leapYearCheck定義に従って、年を文字列でメソッドに渡す必要があります。

于 2013-04-03T02:30:45.630 に答える