我必须将传入的String字段转换为代表有效金额的BigDecimal字段,例如:
String amount = "1000";
BigDecimal valid_amount = convert(amount);
print(valid_amount.toString())//1000.00
使用什么样的API将String转换为Java中的有效金额(例如:apache commons library)?
提前致谢,
答案 0 :(得分:8)
BigDecimal(String)
构造函数怎么样?
String amount = "1000";
BigDecimal validAmount = new BigDecimal(amount);
System.out.println(validAmount); // prints: 1000
如果要以不同方式格式化输出,请使用Formatter
类。
答案 1 :(得分:5)
您的意思是达到以下目的:?
NumberFormat nf = NumberFormat.getCurrencyInstance();
System.out.println(nf.format(new BigDecimal("1000")));
输出
$1,000.00
答案 2 :(得分:0)
使用new BigDecimal(strValue)
。
答案 3 :(得分:0)
有Joda-Money库来处理货币价值。但是,根据该网站的说法,“当前的开发版本旨在用于反馈而非生产用途。”
答案 4 :(得分:0)
如果要打印十进制数,请使用setScale方法
path <- "SO/rails-master/"
dirs <- list.dirs(path)
branching_factor <- vector(length = length(dirs))
for (i in 1:length(dirs)) {
branching_factor[i] <- length(list.dirs(path = dirs[i], recursive = FALSE))
}
result <- data.frame(Folders = basename(dirs), BranchingFactor = branching_factor)
> head(result)
Folders BranchingFactor
1 rails-master 14
2 .github 0
3 actioncable 4
4 app 1
5 assets 1
6 javascripts 1