public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Insert value for year (Ez = 2014): ");
double year = in.nextDouble();
System.out.println("Insert value for day (Ex = 12): ");
double day = in.nextDouble();
System.out.println("Insert number for month (Ex = 3): ");
double month = in.nextDouble();
double totalDays = day;
if (month == 1) {
} else if (month == 2) {
double totalDays = (totalday + 31);
}
}
我试图将totalDays
加倍并在if语句中使用它。我想用变量添加它而不再使用双打。怎么样?
答案 0 :(得分:1)
您的代码错误地重新声明条件内的totalDays。但是,重新声明内部范围中的变量并不是您想要做的。您应该使用相同的变量。使用复合add-assign运算符,如下所示:
totalDays += 31;
答案 1 :(得分:0)
如果你的意思是你想避免每个月重复写totalDays = totalDays + 31,那么你需要一个函数。
对于函数和main都要查看totalDays,它需要是在main之外声明的成员变量,而不是main函数的本地变量。
由于您在main中编写静态函数,因此totalDays也需要是静态的。
public class getSystemInfo {
static double totalDays = 0;
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Insert value for year (Ez = 2014): ");
double year = in.nextDouble();
System.out.println("Insert value for day (Ex = 12): ");
double day = in.nextDouble();
System.out.println("Insert number for month (Ex = 3): ");
double month = in.nextDouble();
totalDays = day;
if (month == 1) {
} else if (month == 2) {
addThirtyOne();
}
}
static void addThirtyOne()
{
totalDays = totalDays + 31;
}
}