在java中选择逗号分隔值中的每个值

时间:2016-02-28 12:13:10

标签: java arrays comma

这是我的代码和结果

enter image description here

我想要的是计算每个帐号的总余额,我如何选择区分的每个帐号以及它的余额来进行操作(减去和添加)?

结果如下: 帐号,借方D,贷方C,余额

2 个答案:

答案 0 :(得分:0)

对于您读入的每一行,您可以在逗号符号上拆分字符串,例如

String[] transactionLineElements = transactionLine.split(",");

这将为您提供一个字符串数组,其中第三个元素(在索引2处)是该事务值/余额 - 即transactionLineElements [2]。然后,您可以将该事务值字符串解释为数字,例如

BigDecimal balance = new BigDecimal(transactionLineElements[2]);

同样,您可以解析帐号,例如:

Long accountNumber = Long.valueOf(transactionLineElements[0]);

答案 1 :(得分:0)

您必须使用String.split(String regex)以逗号分隔值。例如:

String[] values = transactionLine.split(",");  // it can be a regex too
// You should check values.length for if there are less/more values than needed

然后使用Long.parseLong(String s)将帐号解析为long。如果你的号码非常大,你可能想要使用BigInteger.valueOf(String s)

long accountNumber = Long.parseLong(values[0]);
// Or use this instead:
BigInteger accountNumber = BigInteger.valueOf(values[0]);

要检查是否是信用卡或借记卡,请记住必须使用String.equals(String s)来比较字符串内容,而不是==

if (values[1].equals("D")) {
    // debit
}
else if (values[1].equals("C") {
    // credit
}
else {
    // wrong input; you should tell the user here
}