假设某餐馆中每桌顾客点菜记录的格式为“北京烤鸭:189 西芹百合:15 清蒸鲈鱼:80”(每道菜的价格与下一道菜的名字之间有一个空格)。编写一个类的方法,能够接受键盘录入的符合上述格式的点菜内容字符串,输出点菜记录中每种菜的价格及总价格。
package zuoye4;
import java.util.*;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入点菜记录:");
Scanner input = new Scanner(System.in);
String s = input.nextLine();
transform(s);
/*
String []str = s.split(" ");//拆分字符串每个字符串保留一道菜的信息
double total = 0;
for (int i = 0; i < str.length; i++)
{
System.out.println(str[i].toString());
}
for (int i = 0; i < str.length; i++)
{
String []str2 = str[i].split(":");//拆分字符串分出菜名和单价
System.out.println("菜品:"+str2[0]+"\t单价:"+str2[1]);
total += Double.parseDouble(str2[1]);
}
System.out.println("以上菜品总价为:"+total);
*/
input.close();
}
public static void transform(String str) {
double cost = 0.0;
String[] temp = str.split(" ");
for(int i = 0; i<temp.length; i++) {
String[] tmp = temp[i].split(":");
System.out.println(tmp[0]+" "+tmp[1]);
cost += Double.parseDouble(tmp[1]);
}
System.out.println("总的价格: "+cost);
}
}