Groovy如何将字符串"1,503"转换为整数?

5
我正在解析一个使用逗号分隔千位的整数值的文件。
String s = "1,503"
Integer i = new Integer(s)

无法工作,抛出了解析异常。是否有一种简单的方法来解析它?

谢谢

2个回答

7
稍微更加时髦的方法可能是这样的:
int a = java.text.NumberFormat.instance.parse( '1,234' )

但这将使用默认语言环境


6
请使用NumberFormat代替。例如,在Java中:
import java.util.*;
import java.text.*;

public class Test {
    public static void main(String args[]) throws ParseException {
        NumberFormat format = NumberFormat.getIntegerInstance(Locale.US);
        Long parsed = (Long) format.parse("1,234");
        System.out.println(parsed);
    }
}

当然,您可以从Long中获取整数值。

我已经明确指定了Locale.US,以确保逗号用作千位分隔符;如果输入可能会有所不同,您可能需要使用不同的语言环境。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接