简体   繁体   English

如何将字符串23323.00转换为Long

[英]how to convert String 23323.00 to Long

String avgPageLoadTimeStr = row.get("avg_page_load_time");
Long avgPageLoadTime = Long.parseLong(avgPageLoadTimeStr);

For example : 例如 :

avgPageLoadTimeStr = 52747.50;

How to convert avgPageLoadTimeStr to Long ? 怎么把avgPageLoadTimeStr转换成Long

52747.50 is a floating point number. 52747.50是浮点数。 So you should first parse it to a floating point number and then round it to a long value: 因此,您应该首先将其解析为浮点数,然后将其舍入为长整型值:

String avgPageLoadTimeStr = row.get("avg_page_load_time");
double d = Double.parseDouble(avgPageLoadTimeStr);
long avgPageLoadTime = Math.round(d);

Depending on your needs you could also use Math.floor() or Math.ceil() before rounding it to a long value. 根据您的需要,您也可以在将其舍入为长Math.ceil()之前使用Math.floor()Math.ceil()

You will get a NumberFormatException , because "52747.50" is a floating point number. 您将获得NumberFormatException ,因为“ 52747.50”是浮点数。

Thus you can use Double to parse it and get the long value. 因此,您可以使用Double解析它并获取long值。

String avgPageLoadTimeStr = "52747.50";
Double doubleObj = new Double(avgPageLoadTimeStr);
long longValue = doubleObj.longValue();
System.out.println(longValue);

or simply 或简单地

long longValue = (long) Double.parseDouble(avgPageLoadTimeStr);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM