当前位置: 首页 > 面试题库 >

为什么代表数字的String的Integer.parseInt在J2ME中抛出java.lang.NumberFormatException?

狄阳华
2023-03-14
问题内容

我想对的四列的值求和recordstore。这四列中的值是带有的数字decimal point,例如30.00;该recordstore行是一个csv- like数据,我使用它使用用户定义的函数来获取特定列的值:String例如,对于四列,我得到a "30.00"。现在我要sum这四个值;
所以我一定要convert他们成int!但是,当我尝试使用时Integer.parseIntjava.lang.NumberFormatException将引发!那么如何在这种情况下求和呢?


问题答案:

尽管30.00对您来说似乎是一个整数,但Java认为它看起来像一个浮点值(由于小数点)。

因此,您需要将其解析为一个double,然后获取整数部分。

int i = Double.parseDouble("30.00").intValue();

(顺便说一下,这不是特定于J2ME的。)



 类似资料:
  • 问题内容: 我正在使用iReport构建jaspersoft报告,并且正在使用Fishbowl作为我的DBMS。 我建立了表,并在iReport中显示了我的表是关系型的,但是由于某种原因,它使我出错并且无法运行。它应该非常简单。我要输入邮政编码,日期范围或州名,并输出productName,已实现的总数量,邮政编码和州名的缩写。 当我确实将报告上载到Fishbowl时,它可以运行,但最终崩溃并显示

  • 为什么throwsAdvice对象的类型不是throwsAdvice?作者的评论表明,这似乎是一个有意的设计。我不知道这个奇怪的设计有什么用,也不知道我是否忽略了任何细节。

  • 我想了解为什么一段代码不会抛出NullPointerException。 请考虑以下代码: 方法被重复调用,同时以下代码在单独的线程中运行: 只有一个实例。 从不引发NullPointerException。 但是,当方法暂停时,即使暂停0毫秒,也会按预期引发NullPointerException: 我的理解是,在理论上,在检查和调用之间存在竞争条件。在实践中,如果不引入暂停(即从后续方法调用中

  • 问题内容: final Multimap terms = getTerms(bq); for (Term t : terms.keySet()) { Collection C = new HashSet(terms.get(t)); if (!C.isEmpty()) { for (Iterator it = C.iterator(); it.hasNext();) { BooleanClause

  • 问题内容: 我试图将两个’Employee’对象添加到TreeSet中: 但是它抛出一个ClassCastException: 但是,如果我仅将一个对象添加到TreeSet中: 或者,如果我改用HashSet: 那就成功了。为什么会发生异常,我该如何解决? 问题答案: 要么必须实现,或者你需要提供一个比较创建时。 在文档中对此进行了详细说明: 插入排序集中的所有元素都必须实现接口(或被指定的比较器