我想在另一种方法中将字符串从主方法转换为整数,但出现错误。
` 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
我不明白这个错误。说我需要一个字符串,并且由于该方法使用整数(我想)我需要返回一个字符串?我将如何解决这个问题?