gpt4 book ai didi

java - 搜索列表中与 id 有关的最后一个值

转载 作者:太空宇宙 更新时间:2023-11-04 08:00:09 24 4
gpt4 key购买 nike

我了解如何在 txt 文件中搜索值(在本例中为 id),但通常这会返回它找到的第一个选项。

我该如何工作才能找到文件中与 id 相关的最后一个值并使用该值? (本例中,卡ID为17,余额为813。

txt 文件示例

17,721.0
17,744.0
17,767.0
17,790.0
17,813.0

我当前的搜索代码。

public static double readBalance(int cardNumber)
{
double balance;
String line;

try {
File CbFile = new File("cardBalance.txt");
BufferedReader br = new BufferedReader(
new InputStreamReader(
new FileInputStream(CbFile)));

while((line = br.readLine()) != null) {
if(line.indexOf(cardNumber) != -1)
break;
}
String[] s = line.split("\\,");

balance = Double.parseDouble(s[1]);
System.out.println("Blalance of " + cardNumber +
" is: " + s[1]);
br.close();
} catch(IOException e) {
System.out.println("read error: " + e.getMessage());
}


return balance;

}

最佳答案

lastIndexOf(String)如果您可以一次将整个文件读入内存,将为您提供最后一次出现的字符串。

如果没有,你会想要这样的东西:

String cardInfo;
String cardNumberString = cardNumber + ","; // makes sure that you don't get your
// id in the middle of a value
while((line = br.readLine()) != null) {
if(line.indexOf(cardNumberString) != -1)
cardInfo = line;
}

关于java - 搜索列表中与 id 有关的最后一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12965864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com