使用Scanner类的实例解析字符串“数学99,物理98,英语98”中的考试成绩,并计算出总成绩以及平 均分。
时间: 2023-06-16 08:04:48 浏览: 134
汇编代码,输入一同学的期中成绩、实验成绩、期末成绩和它们在总评成绩中分别占的百分比,计算得到该同学的总评成绩
可以通过使用Scanner类的实例来解析字符串,具体实现代码如下:
```java
import java.util.Scanner;
public class ScoreParser {
public static void main(String[] args) {
String str = "数学99,物理98,英语98";
int totalScore = 0; // 总成绩
int count = 0; // 记录科目数
Scanner scanner = new Scanner(str);
scanner.useDelimiter(","); // 指定分隔符为逗号
while (scanner.hasNext()) {
String subjectScore = scanner.next();
String[] parts = subjectScore.split("\\D+"); // 使用正则表达式分割字符串,去掉非数字部分
int score = Integer.parseInt(parts[1]);
totalScore += score;
count++;
}
double avgScore = (double) totalScore / count; // 平均分
System.out.println("总成绩:" + totalScore);
System.out.println("平均分:" + avgScore);
}
}
```
运行程序,可以得到以下输出结果:
```
总成绩:295
平均分:98.33333333333333
```
阅读全文