如何将字符串转换为long。
for int you
int i = 3423;
String str;
str = str.valueOf(i);
所以你怎么走另一条路,但很久。
long lg;
String Str = "1333073704000"
lg = lg.valueOf(Str);
答案 0 :(得分:157)
这是一种常见的方法:
long l = Long.parseLong(str);
还有这种方法:Long.valueOf(str);
区别在于parseLong
返回原始long
而valueOf
返回new Long()
对象。
答案 1 :(得分:9)
将字符串转换为long的方法是Long.parseLong。修改你的例子:
String s = "1333073704000";
long l = Long.parseLong(s);
// Now l = 1333073704000
答案 2 :(得分:4)
String s = "1";
try {
long l = Long.parseLong(s);
} catch (NumberFormatException e) {
System.out.println("NumberFormatException: " + e.getMessage());
}
答案 3 :(得分:4)
如果您的输入是String,那么我建议您将String存储为double,然后将double转换为long。
String str = "123.45";
Double a = Double.parseDouble(str);
long b = Math.round(a);
答案 4 :(得分:3)
你也可以试试,
long lg;
String Str = "1333073704000"
lg = Long.parseLong(Str);
答案 5 :(得分:2)
import org.apache.commons.lang.math.NumberUtils;
这将处理null
NumberUtils.createLong(String)
答案 6 :(得分:1)
这样做:
long l = Long.parseLong(str);
但是,请始终检查str是否包含数字以防止抛出异常。 例如:
String str="ABCDE";
long l = Long.parseLong(str);
会抛出异常但是这个
String str="1234567";
long l = Long.parseLong(str);
赢得'吨
答案 7 :(得分:1)
使用parseLong()
,例如:
long lg = lg.parseLong("123456789123456789");