使用Scanner类的实例解析字符串“数学99,物理98,英语98”中的考试成绩,并计算出总成绩以及平 均分。
时间: 2023-06-16 17:04:48 浏览: 59
可以通过使用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
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![asm](https://img-home.csdnimg.cn/images/20210720083646.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)