我正在关注一个java程序的模板,我无法找到为什么我得到';'预期的错误

时间:2013-10-03 23:56:39

标签: java

我有大约3周的java经验所以请耐心等待。我正在尝试制作一个程序,通过遵循我的老师模板来计算我活着的天数,但对于我的生活,我无法弄清楚为什么我一直得到“错误”;'预期

public class age {
public static void main(String[] args) {
    System.out.print("Enter your date of birth");
    int calcDays = (String birthdate);{
        String m1 = birthdate.substring(0,1);
        String m2 = birthdate.substring(3,4);
        String m3 = birthdate.substring(6,9);
        int month = Integer.parseInt(m1);
        int day = Integer.parseInt(m2);
        int year = Integer.parseInt(m3);
        int dd = year * 365 + month * 30 + day;
        return(dd);
    }
    System.out.print("This is a test" + dd);
}

}

1 个答案:

答案 0 :(得分:2)

看起来你有点徘徊在模板上。这就是我的想法:

import java.util.Scanner;

public class age {

    public static void main(String[] args) {
        Scanner sysin = new Scanner(System.in); 
        System.out.print("Enter your date of birth");
        String birthdate = sysin.next();
        int dd = calcDays(birthdate);

        System.out.print("This is a test" + dd);
    }

    static int calcDays(String birthdate) {
        String m1 = birthdate.substring(0, 1);
        String m2 = birthdate.substring(3, 4);
        String m3 = birthdate.substring(6, 9);
        int month = Integer.parseInt(m1);
        int day = Integer.parseInt(m2);
        int year = Integer.parseInt(m3);
        int dd = year * 365 + month * 30 + day;
        return (dd);
    }
}

示例运行的输出:

    Enter your date of birth: 12/25/2000
    This is a test73032

注意:

  1. import语句使Scanner类可见。
  2. 类语句开始定义名为“age”的类。普通的Java约定是大写类的名称(如“Age”),但我保留了你的名字。该类包含两个名为main()和calcDays()的静态方法。
  3. main()方法是起点。它在运行Age类时由Java运行时执行(通过命令行中的“java Age”,或者在交互式开发环境中单击“Go”。)
  4. main()打印提示,使用Scanner读取字符串,将该字符串传递给calcDays()方法,并打印calcDays()返回的整数值。
  5. calcDays()方法接受一个字符串参数,将这些参数切换为月,日和年的子字符串,将这些参数转换为整数值并计算作为结果返回的日期数。
  6. 试验一下。您会发现,即使格式发生微小变化也会导致异常和大量嘈杂的输出。随着您开发更多技术,您将找到适应合理变化的方法,并礼貌地拒绝不合理的变化。看看Java Tutorials的建议很好,但如果这是你用任何语言编写的第一本书,那么你可能想投资一本初学者的书(Head First Java,Java for Dummies等)和那么一本书。回到教程,看看更深入的相同材料。