这是我的代码和结果
我想要的是计算每个帐号的总余额,我如何选择区分的每个帐号以及它的余额来进行操作(减去和添加)?
结果如下: 帐号,借方D,贷方C,余额
答案 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
}