我正在尝试为我的IT课做作业,我们只是开始进行一些编程。我们有2类,Main和Okej。这只是一个简单的代码,getter和setter必须检查用户是否输入了正确的数字。但是IF语句不起作用。你能帮忙吗?
package okej;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner program = new Scanner(System.in);
System.out.println("Please,type your Name.");
String name = program.nextLine();
System.out.println("Please,type your age.");
int age = program.nextInt();
System.out.println("Please,type your weight.");
double weight = program.nextDouble();
Okej you = new Okej(name,age,weight);
System.out.print(you);
}
}
package okej;
import java.util.Scanner;
public class Okej {
String name = "";
int age = 0;
double weight = 0.0;
public Okej(String name,int age,double weight) {
this.name = name;
this.age = age;
this.weight = weight;
}
public String getName() {
return name;
}
public void setName(String name) {
System.out.println("Okay,your name is " + name + ".");
this.name = name;
}
public int getage() {
return age;
}
public void setage(int age) {
if (age > 18) {
if (age < 99) {
this.age = age;
System.out.println("Okay,your age is " + age + ".");
}
}
else {
System.out.println("You have put an invalid age for this program.");
System.out.println("Setting the number to 20.");
this.age = 20;
}
}
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
if (weight > 30) {
if (weight < 300) {
this.weight = weight;
System.out.println("Okay,your weight is " + weight + ".");
}
}
else {
System.out.println("You have put an invalid weight for this program.");
System.out.println("Setting the number to 50.");
this.weight = 50;
}
}
@Override
public String toString() {
return "Okay,your name is " + name + ",your age is " + age + ",and you weight "+ weight +".";
}
}