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 09:03:05 浏览: 53
你可以在输出语句中直接写上孙旭的信息,例如:
```
System.out.println("孙旭的学号是xxx,姓名是xxx,英语成绩是xxx,数学成绩是xxx,Java成绩是xxx。");
```
或者你可以创建一个 `Student` 对象来表示孙旭,然后调用该对象的 `toString` 方法输出信息,例如:
```
Student s = new StudentPT("xxx", "孙旭", 90.0, 80.0, 85.0, 1.0);
System.out.println(s.toString());
```
相关问题
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 Roster { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); /********** Begin *********/ String roster1 = scanner.toString(); // String roster2 = scanner.nextLine(); // System.out.println(roster1.length());为什么这里输出的是294
在这段代码中,`scanner.toString()`方法返回的是Scanner对象的字符串表示形式,它包含了Scanner对象的一些信息,如类名、哈希码等。因此,当你对Scanner对象调用`toString()`方法时,返回的字符串长度可能比你预期的要长。
如果你想要获取用户输入的字符串,应该使用`scanner.nextLine()`方法,而不是`scanner.toString()`方法。所以,你需要将注释中的代码修改为:
```
String roster1 = scanner.nextLine();
```
这样就可以获取用户输入的字符串了。
阅读全文