输入格式:
假设某图书馆中图书记录的格式为“Java程序设计: 34;Web程序设计: 56;JSP程序设计:20”(每本书的价格是整数,每本书的价格与下一本书的名字之间有一个中文;)。
输出格式:
编写一个类的方法,能够接受键盘录入的符合上述格式的图书内容字符串,输出图书记录中所有书目的总价格。
输入样例:
Java程序设计:34 ;Web程序设计: 56;JSP程序设计:20
输出样例:
Java程序设计:34
Web程序设计: 56
JSP程序设计:20
总价格为110
Java程序设计:34
Web程序设计: 56
JSP程序设计:20
总价格为110
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
String[] arr=str.split(";");
int number=0;
int sum=0;
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length(); j++) {
if(arr[i].charAt(j)>='0'&&arr[i].charAt(j)<='9'){
sum+=(arr[i].charAt(j)-'0')*10+(arr[i].charAt(j+1))-'0';
break;
}
}
System.out.println(arr[i]);
}
System.out.println("总价格为"+sum);
}
}
我用到的方法都是最基础的方法,只是比较繁琐而已,但绝对是这道题的所有解法中最通俗易懂的。其实就是遍历字符串的方法,以及有着将字符转化为数字的技巧。