5.编写程序去除一个字符串中的全部非数字字符,例如将形如"ab123you"的非数字字符全部去除,得到字符串"123"(参看例子10)。并计算出总成绩以及平均分数(参看例子13)。用java
时间: 2023-11-27 22:49:03 浏览: 64
编写程序,输入并保存5名学生的信息,计算出平均分,再按照成绩从高到低的顺序输出他们的信息。学生信息包括:学号、姓名、成绩。
以下是Java代码实现:
```java
public class RemoveNonDigits {
public static void main(String[] args) {
String str = "ab123you";
String digitsOnly = str.replaceAll("[^0-9]", "");
System.out.println(digitsOnly); // 输出 123
String scores = "90,80,95,87,92";
String[] scoreArray = scores.split(",");
int sum = 0;
for (String score : scoreArray) {
sum += Integer.parseInt(score);
}
double average = (double) sum / scoreArray.length;
System.out.println("总成绩:" + sum); // 输出 总成绩:444
System.out.println("平均分数:" + average); // 输出 平均分数:88.8
}
}
```
解释:
1. `str.replaceAll("[^0-9]", "")` 用正则表达式替换掉所有非数字字符,返回只包含数字字符的字符串。
2. `scores.split(",")` 用逗号分隔符将成绩字符串切割成字符串数组。
3. 遍历字符串数组,将每个成绩转换成整数并累加到 `sum` 变量中。
4. 计算平均分数,需要将 `sum` 强制转换成浮点型,再除以成绩数量。
阅读全文