public class StudentDemo { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 判断类型并循环输入 String stuNo, name, str; double english, math, Java, testScore = 1.0; double sum2 = 0, sum3 = 0; while (in.hasNext()) { String line = in.nextLine(); String[] fields = line.split(" "); //字符串 line 按照空格分隔符进行拆分,拆分后的结果存储在一个名为 fields 的字符串数组中 stuNo = fields[0]; //取 fields 数组的第一个元素,即该语句将 fields 数组的第一个元素的值赋给了变量 stuNo name = fields[1]; english = Double.parseDouble(fields[2]); math = Double.parseDouble(fields[3]); Java = Double.parseDouble(fields[4]); if (fields.length == 5) { // 学生PT Student s1 = new StudentPT(stuNo, name, english, math, Java, testScore); System.out.println(s1.toString()); } else if (fields[5].equals("SystemFramework")) { // 学生SJ Student s2 = new StudentSJ(stuNo, name, english, math, Java, testScore); System.out.println(s2.toString() + " task:SystemFramework"); sum2 = s2.sum(); } else if (fields[5].equals("GroupLeader")) { // 学生ZZ Student s3 = new StudentZZ(stuNo, name, english, math, Java, testScore); System.out.println(s3.toString() + " duty:GroupLeader"); sum3 = s3.sum(); } else { break; } } //比较大小 double max = Math.max(sum2,sum3); if(max == sum2){ System.out.println("Lisi's total score is more than Wangwu"); }else if(max == sum3){ System.out.println("Lisi's total score is less than Wangwu"); } } } 如何设置固定的输出顺序
时间: 2023-12-10 22:03:05 浏览: 81
可以在 Student 类中重写 toString() 方法,按照一定的顺序输出所有字段,然后在 main 方法中直接调用 toString() 方法即可。例如:
```
public class Student {
// 省略其他字段和方法
@Override
public String toString() {
return stuNo + " " + name + " " + english + " " + math + " " + Java;
}
}
```
这样输出的顺序就是固定的,不会因为输入字段的顺序而改变。
相关问题
public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); // 在此输入您的代码...
这是一个Java程序的基本结构,`Main` 类通常是Java应用的起点。`public class Main` 表示这是一个公共访问权限的主类,通常用于存放应用程序的主要入口点。`main` 方法是Java程序的执行起点,当程序运行时,JVM会寻找这个方法。
在这个例子中:
1. `Scanner scan = new Scanner(System.in)`:创建了一个`Scanner`对象,用于从标准输入(通常是键盘)读取用户的数据。`System.in`是一个内置流,代表程序的输入。
2. 接下来的代码应该是用来接收用户的输入,并根据需要进行处理的部分。这部分内容通常包括控制循环、条件判断以及对`scan`对象的各种读取操作。
```java
// 模拟一个简单的命令行交互
String input;
while (true) {
System.out.println("请输入命令(q退出):");
input = scan.nextLine();
if ("q".equals(input)) {
break; // 用户输入"q"时,跳出循环,结束程序
}
// 根据输入执行相应的操作...
}
```
import java.util.Scanner; public class Main { public static void main(String[] args) {
`import java.util.Scanner;` 这行代码是在Java程序中导入`java.util.Scanner`包的关键字。`Scanner`是Java提供的一种用于处理用户输入的类,它允许开发者从控制台读取数据,如整数、浮点数、字符串等。在`main`函数开始之前,通常会引入这个包以便在程序中创建`Scanner`对象来获取用户的输入。
接下来的`public class Main { ... }`这部分定义了一个名为`Main`的公共类,这是Java应用程序的标准入口点。所有的Java程序都会有一个`main`方法,它是程序运行的起点。在这个类里,你可以编写初始化代码,执行业务逻辑,以及调用其他方法。
在`main`函数的具体内容中,通常会看到类似这样的结构:
```java
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); // 创建Scanner对象
System.out.println("请输入一些信息:"); // 提示用户
int input = scanner.nextInt(); // 读取用户输入的整数
// 更多的逻辑操作...
scanner.close(); // 关闭扫描器以释放资源
}
```
这里,我们创建了一个`Scanner`实例,并通过`nextInt()`方法获取用户输入的整数值。
阅读全文