参考例子16.解析一个文件中的价格数据,并计算平均价格。该文件的内容如下: 商品列表: 电视机,2567元/台 洗衣机,3562元/台 冰箱,6573元/台java
时间: 2024-03-07 16:49:12 浏览: 97
好的,这个问题可以通过以下 Java 代码实现:
```java
import java.io.*;
public class AveragePrice {
public static void main(String[] args) {
try {
// 打开文件输入流读取原文件内容
FileInputStream inputStream = new FileInputStream("prices.txt");
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
// 计算商品个数和总价格
String line;
int count = 0;
double totalPrice = 0;
while ((line = reader.readLine()) != null) {
if (line.contains("元")) {
String priceText = line.substring(line.indexOf(",") + 1, line.indexOf("元"));
double price = Double.parseDouble(priceText);
totalPrice += price;
count++;
}
}
// 计算平均价格并输出结果
double averagePrice = totalPrice / count;
System.out.println("商品个数:" + count);
System.out.println("总价格:" + totalPrice);
System.out.println("平均价格:" + averagePrice);
// 关闭文件流
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这个程序首先打开一个文件输入流,读取原文件的内容,然后逐行扫描每一行,如果包含“元”字样,则提取出价格并加到总价格中。最后,根据商品个数和总价格计算平均价格,并输出结果。需要注意的是,这里使用了字符串的`contains`方法、`substring`方法和`Double`类的`parseDouble`方法来处理字符串数据。
阅读全文