比上一题多了亿点点知识点……不知不觉又40分钟过去了
掌握知识点
- countTokens()方法:统计分割个数
- nextToken()方法:指定下一个数据
- hasMoreTokens()方法;
- Integer.parseInt(参数);
- split()方法
- substring()方法熟练使用
- indexOf()方法熟练使用
通关源码
import java.util.Scanner;
import java.util.StringTokenizer;
public class StrTest {
public static void main(String[] args) {
// 请在Begin-End间编写代码
/********** Begin **********/
// 接收给定的话费清单(由三行组成)
Scanner scanner = new Scanner(System.in);
String[] arr = new String[3];
String total = "";
for (int i = 0; i < arr.length; i++) {
arr[i] = scanner.nextLine();
if(i < arr.length){
total += arr[i] + "-";
}else{
total += arr[i];
}
}
double sum = 0;
// 拼接三行字符串
StringTokenizer stringTokenizer = new StringTokenizer(total,"-");
while(stringTokenizer.hasMoreTokens()){
String[] a = stringTokenizer.nextToken().split(":");
String a2 = a[1].substring(0,a[1].indexOf("元"));
// System.out.println(a2);
sum +=Double.parseDouble(a2);
}
// 分隔字符串,累加每种物品的价格
System.out.println("话费总额为:" + sum);
// 输出话费总额
/********** End **********/
}
}