所以我有一个String / txt文件:
All purchases: blabla : 1 derp : 20 blabla : 1 herp : 30
这只是一个例子,将根据用户输入生成真实文件
所以我需要做的是将相似的字符串与相似的名称(第一部分)组合在一起,使它们看起来像这样:(name) : (number) x(amount of same strings)
例如,让我们拿走我们拥有的文件:
All purchases: blabla : 1 derp : 20 blabla : 1 herp : 30
解析后,它必须如下所示:All purchases: blabla : 1 x2 derp : 20 herp : 30
我尝试将最后一个值写入变量并使用下一个值进行检查,但是如果值的顺序不同,该怎么办?那就是我被困住的地方。
答案 0 :(得分:1)
由于每个条目都有三个组成部分:
[姓名]:[编号] 你可以在这里做一些事情。有点像:
Scanner s = new Scanner(new File("YourFileHere.txt"));
ArrayList<String> entries = new ArrayList<String>();
while(s.hasNext())
{
entries.add(s.next() + " " + s.next() + " " s.next());
}
你当然必须删除领先的'所有购买:',但现在一切都在[名称] [数字]形式的arraylist中
您只需确定每个中有多少。从这里你可以对它们进行排序然后计算它们。