JAVA金额格式字符串转数值

项目中有时会遇到对金额格式的数值如“1,234.34567”进行计算,直接使用Double.parseDouble(“1,234.34567”)会抛出NumberFormatException异常, 那么,有没好的方法解析金额格式的数值?
jdk中提供了NumberFormat支持,它的format方法可以将数值转成金额格式字符串,parse方法能解析金额格式的字符串,如下:

NumberFormat format = NumberFormat.getInstance();
String result = format.format(1234.34567);
System.out.println(result);
double doubleValue;
try {
    doubleValue = format.parse("1,234.34567").doubleValue();
    System.out.println(doubleValue);
} catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

输出结果如下:

1,234.346
1234.34567

原文地址:https://www.cnblogs.com/QW-lzm/p/11428984.html

时间: 2024-11-02 15:27:36

JAVA金额格式字符串转数值的相关文章

Java时间格式字符串与Date的相互转化

目录 将Date转化为格式化字符串 时间格式字符串转化为Date @ 将Date转化为格式化字符串 将Date转化为格式化字符串是利用SimpleDateFormat类继承自 java.text.DateFormat类的format方法实现的: public final String format(Date date):将日期格式化成日期/时间字符串. //获取当前时间 Date date = new Date(); //定义转化为字符串的日期格式 SimpleDateFormat sdf =

java.sql.SQLException:ORA-01861:文字和格式字符串不匹配

1.错误描述 java.sql.SQLException:ORA-01861:文字和格式字符串不匹配 2.错误原因 字段名为statis_date在数据库中存储的数据类型是Date,而在Java中拼接SQL语句时传参数却是字符串类型,类型不匹配,导致出错 3.解决办法 (1)修改数据库中该字段的数据类型 这种方法不太建议 (2)修改拼接时传参数方式,将参数利用to_date转换

Java时间戳与日期格式字符串的互转

上代码: import java.text.SimpleDateFormat; import java.util.Date; public class DateUtil { /** * 时间戳转换成日期格式字符串 * @param seconds 精确到秒的字符串 * @param formatStr * @return */ public static String timeStamp2Date(String seconds,String format) { if(seconds == nul

Java——日期格式

 /* * 日期对象和毫秒值之间的转换. * * 毫秒值--->日期对象: *  1.通过Date对象的构造方法new Date(timeMillis) *  2.还可以通过setTime设置. * 因为可以过Date对象的方法对该日期中的各个字段(年月日等进行操作) * * 日期对象-->毫秒值: * 2.getTime方法. * 因为可以通过具体的数值进行运算. */ public static void getTime() { /* * 对日期对象进行格式化: */ Date dat

Java整数和字符串转换

字符串转换整数: 虽然有类似的Integer.parseInt(),但是笔试面试明显不会如此: 转字符串可以考虑为: 1.单个字符的转换 2.权值 如:从前往后依次扫描,则每次扫描一个字符  前面数值*10: 如345,扫描3,再3*10+4,再34*10+5............ 从后往前扫描类似处理: class ParsInt{ public static void main(String[] args) { // TODO, add your application code Syst

Java编程基础-字符串

在Java语言中,字符串数据实际上由String类所实现的.Java字符串类分为两类:一类是在程序中不会被改变长度的不变字符串:另一类是在程序中会被改变长度的可变字符串.Java环境为了存储和维护这两类字符串提供了 String和StringBuffer两个类(在JDK1.5版本后出现了StringBuilder,该类被设计用作 StringBuffer 的一个简易替换). 一.字符串(String) 1.字符串概念了解 String 类代表字符串,Java 程序中的所有字符串字面值(如 "ab

JAVA时间格式转换大全

Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @return 返回时间类型 yyyy-MM-dd HH:mm:ss */ public static Date getNowDate() { Date currentTime = new Date(); SimpleDateFormat formatter = new SimpleDateForma

Java正则表达式实现字符串的动态多替换

需求场景: 今天在处理SQL语句的时候,由于数据库中存的格式是VARCHAR2型的,这就需要对SQL语句中WHERE条件后边的带数字的字符串加上单引号,对于字符串的处理,首先想到的就是正则表达式,对正则表达式,虽然有一些了解,但是也谈上很熟练,百度了一番(正常网络也就那个几个无奈的搜索引擎使用啦),发现替换,基本上属于固定替换,就是把某一类符合正则标准的,全部替换为一个固定的字符串,比如说,错别字的处理啊,还是比较好用的,这个在程序中也有实现,很easy.但是,我需要的是多个,且是动态替换的,最

认识Java中的字符串

Java 中 String 类的常用方法 Ⅰ String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等,下面我们就来领略它的强大之处吧. String 类的常用方法: 结合代码来熟悉一下方法的使用: 功能:判断 Java 文件名是否正确,判断邮箱格式是否正确.其中:合法的文件名应该以 .java 结尾:合法的邮箱名中至少要包含 "@" , 并要求 "@" 在 "." 之前. p