如何将字符串转换为long。如何将字符串转换为long
为INT您
int i = 3423;
String str;
str = str.valueOf(i);
你怎么这么走另一条路,但长。
long lg;
String Str = "1333073704000"
lg = lg.valueOf(Str);
如何将字符串转换为long。如何将字符串转换为long
为INT您
int i = 3423;
String str;
str = str.valueOf(i);
你怎么这么走另一条路,但长。
long lg;
String Str = "1333073704000"
lg = lg.valueOf(Str);
这是做到这一点的常用方法:
long l = Long.parseLong(str);
还有这个方法:Long.valueOf(str);
不同的是,parseLong
返回原始long
同时valueOf
返回new Long()
对象。
谢谢。 我按照[链接]被卡在lg.getLong上(http://developer.android.com/reference/java/lang/Long.html#getLong(java.lang.String)) – John 2012-03-30 03:43:00
'getLong'返回一个长从系统属性。这就是为什么它不能像你期望的那样工作。 – Cristian 2012-03-30 03:48:54
假设输入字符串处于您期望的形式,很容易造成错误; “90.77”将会抛出ParseException。所以不要忽略ParseException,但是为你的用例处理它 – 2014-04-23 06:58:33
将字符串转换为long的方法是Long.parseLong。修改你的例子:
String s = "1333073704000";
long l = Long.parseLong(s);
// Now l = 1333073704000
您也可以尝试以下,
long lg;
String Str = "1333073704000"
lg = Long.parseLong(Str);
感谢您的时间。 – John 2012-03-30 03:43:42
String s = "1";
try {
long l = Long.parseLong(s);
} catch (NumberFormatException e) {
System.out.println("NumberFormatException: " + e.getMessage());
}
做到这一点:
long l = Long.parseLong(str);
但是,请务必检查STR包含数字,以防止抛出异常。 例如:
String str="ABCDE";
long l = Long.parseLong(str);
会抛出一个异常,但这
String str="1234567";
long l = Long.parseLong(str);
不会。
import org.apache.commons.lang.math.NumberUtils;
这将处理null
NumberUtils.createLong(String)
如果输入为String那么我建议你到字符串存储到double,然后转换到两倍长。
String str = "123.45";
Double a = Double.parseDouble(str);
long b = Math.round(a);
你还可以添加为什么你认为这比简单地调用'parseLong()'更好吗? – 2016-04-04 22:17:51
使用parseLong()
,例如:
long lg = lg.parseLong("123456789123456789");
@Mogsdad谢谢兄弟,建议。它在评论中显得太怪异现在你真的很喜欢这个答案。 – 2016-04-19 01:08:19
这是问题的一个副本:http://stackoverflow.com/a/2709269/108574 – 2012-03-30 06:33:55