java - String[] 到 BigDecimal[]

标签 java android

<分区>

我有一个发布引文的 Android 应用程序,最终用户可以输入值然后将它们“存储”为默认值,因此下次他们去发布引文时,默认值会被预先填充...

我能够将 BigDecimal[] 存储到 String[] 但我很难获得 String[]回到 BigDecimal[]

谁能帮帮我?

for(int i=0;i<3;i++){
edit.putString(SOMETHING[i], String.valueOf(aSomething.getOtherThing(i)));
}

这可以将其存储为字符串 但我无法将它恢复为 BigDecimal,我试过这个,除此之外:

for(int i=0;i<3;i++){
aSomething.setOtherThing(BigDecimal.valueOf(SOMETHING[i]));
}

谢谢!

最佳答案

你可以简单地使用

new BigDecimal(str);

在你的情况下是

for(int i=0;i<3;i++){
    aSomething.setOtherThing(new BigDecimal(SOMETHING[i]));
}

但是您应该知道这是不安全的,如果该值不是 BigDecimal 的有效表示,它可能会抛出 NumberFormatException。

考虑检查这个 Safe String to BigDecimal conversion

关于java - String[] 到 BigDecimal[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36066460/

相关文章:

java - 如何修复 Java 优先级队列以按特定属性正确排序?

java - 应用程序上传到 Slideme - 有效的 targetSdkVersion 未设置错误

android - 调用 RecyclerView.Adapter.notifyItemInserted() 时,不应用 DividerItemDecoration

android - 如何在 Ubuntu 中使用 Android 共享库

java - 如何引用 Lambda?

java - 如何检查一个对象是否连接到 hibernate 中的另一个对象

java - Java 中 URL 调度的动态类加载

java - 了解 MapReduce 代码

android - 如何从 SimpleCursorAdapter 获取信息到 ContextMenu

java - Android:将 VectorDrawable 添加到 ImageView