按要求完成程序的设计 录入数据要求: 1)键盘录入学生的姓名和年龄 2)姓名的长度在3-10之间 3)年龄范围18-40之间 4)超出这个范围是异常数据不能赋值,需要重新录入,一直到正确为止 创建学生类Student,和学生信息录入处理类,并完成测试。
时间: 2024-05-08 17:17:25 浏览: 20
学生类Student:
```java
public class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
```
学生信息录入处理类:
```java
import java.util.Scanner;
public class StudentInput {
private Scanner sc = new Scanner(System.in);
public Student input() {
String name;
int age;
while (true) {
System.out.print("请输入学生姓名(3-10个字符):");
name = sc.nextLine();
if (name.length() >= 3 && name.length() <= 10) {
break;
} else {
System.out.println("姓名长度不符合要求,请重新输入!");
}
}
while (true) {
System.out.print("请输入学生年龄(18-40岁):");
try {
age = Integer.parseInt(sc.nextLine());
if (age >= 18 && age <= 40) {
break;
} else {
System.out.println("年龄范围不符合要求,请重新输入!");
}
} catch (NumberFormatException e) {
System.out.println("年龄格式不正确,请重新输入!");
}
}
return new Student(name, age);
}
}
```
测试类:
```java
public class Test {
public static void main(String[] args) {
StudentInput si = new StudentInput();
Student stu = si.input();
System.out.println("录入的学生姓名为:" + stu.getName());
System.out.println("录入的学生年龄为:" + stu.getAge());
}
}
```