假设x是你要转换的double类型变量:

不进行四舍五入操作: (int)x

进行四舍五入操作: Integer.parseInt(new java.text.DecimalFormat("0").format(x));

DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。该类设计有各种功能,使其能够分析和格式化任意语言环境中的数,包括对西方语言、阿拉伯语和印度语数字的支持。它还支持不同类型的数,包括整数 (123)、定点数 (123.4)、科学记数法表示的数 (1.23E4)、百分数 (12%) 和金额 ($123)。所有这些内容都可以本地化。

DecimalFormat 包含一个模式 和一组符号

符号含义:

符号     位置     本地化?     含义
0     数字     是     阿拉伯数字
#     数字字     是     阿拉伯数字,如果不存在则显示为空
.     数字     是     小数分隔符或货币小数分隔符
-     数字     是     减号
,     数字     是     分组分隔符
E     数字     是     分隔科学计数法中的尾数和指数。在前缀或后缀中无需加引号。
;     子模式边界     是     分隔正数和负数子模式
%     前缀或后缀     是     乘以 100 并显示为百分数
/u2030     前缀或后缀     是     乘以 1000 并显示为千分数
¤(/u00A4)     前缀或后缀     否     货币记号,由货币符号替换。如果两个同时出现,则用国际货币符号替换。如果出现在某个模式中,则使用货币小数分隔符,而不使用小数分隔符。
'     前缀或后缀     否     用于在前缀或或后缀中为特殊字符加引号,例如 "'#'#" 将 123 格式化为 "#123"。要创建单引号本身,请连续使用两个单引号:"# o''clock"。

例子:

[java] view plain copy

    DecimalFormat df1 = new DecimalFormat("0.0");   
    DecimalFormat df2 = new DecimalFormat("#.#");   
    DecimalFormat df3 = new DecimalFormat("000.000");   
    DecimalFormat df4 = new DecimalFormat("###.###");   
    System.out.println(df1.format(12.34));   
    System.out.println(df2.format(12.34));   
    System.out.println(df3.format(12.34));   
    System.out.println(df4.format(12.34));   

运行结果:
12.3
12.3
012.340
12.34  

[java] view plain copy

    DecimalFormat format = new DecimalFormat("###,####.000");   
    System.out.println(format.format(111111123456.1227222));   
      
    Locale.setDefault(Locale.US);   
    DecimalFormat usFormat = new DecimalFormat("###,###.000");   
    System.out.println(usFormat.format(111111123456.1227222));   
      
    DecimalFormat addPattenFormat = new DecimalFormat();   
    addPattenFormat.applyPattern("##,###.000");   
    System.out.println(addPattenFormat.format(111111123456.1227));   
      
    DecimalFormat zhiFormat = new DecimalFormat();   
    zhiFormat.applyPattern("0.000E0000");   
    System.out.println(zhiFormat.format(10000));   
    System.out.println(zhiFormat.format(12345678.345));   
      
    DecimalFormat percentFormat = new DecimalFormat();   
    percentFormat.applyPattern("#0.000%");   
    System.out.println(percentFormat.format(0.3052222));   

运行结果 :
1111,1112,3456.123
111,111,123,456.123
111,111,123,456.123
1.000E0004
1.235E0007
30.522%
如果使用具有多个分组字符的模式,则最后一个分隔符和整数结尾之间的间隔才是使用的分组大小。所以 "#,##,###,####" == "######,####" == "##,####,####"。

double 类型转化为Integer类型 ---DecimalFormat的更多相关文章

  1. double 类型转化为Integer

    (1)把double先转化成int类型 Double reseve3=Double.parseDouble(bddet[0].getReserve3()); int b=reseve3.intValu ...

  2. Java 中要将 String 类型转化为 int 类型

    在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换. 例1: 1 2 3 4 5 6 S ...

  3. 将字符串类型转化为date类型

    直接上代码 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; pub ...

  4. asp.net如何把一个tostring类型转化为dateTime类型

    Convert.ToDateTime(dr["consult_DealTime"].ToString()).ToString("yyyy-MM-dd"); co ...

  5. C++中将string类型转化为int类型

    写程序需要将string转化为int,所以就探索了一下. 方法一:atoi函数 atoi函数将字符串转化为整数,注意需要stdlib库.所以就尝试了一下: #include <iostream& ...

  6. sqoop将mysql的tinyint类型转化为boolean类型

    当mysql中的字段为tinyint类型时,通过sqoop导入数据到hdfs上,在hdfs上显示的是true,false值.为了显示0,1. 解决方法: jdbc:mysql://<hostna ...

  7. JSTL将number类型转化为String类型

    <c:set var="lm1"> <c:out value="${lm}" /> </c:set>

  8. number类型转化为string类型

    toString 方法 string = toString(num) 缺点: 不能转化 underfind 和 null 2 String 方法 string = String(num) 可以转化 u ...

  9. Java中Object转化为int类型

    转自:http://blog.sina.com.cn/s/blog_5f8421fb010162kb.html Java中由Object类型转化为int类型时,不能直接转化,先是将Object类型转化 ...

随机推荐

  1. Mac系统下,在android studio中使用Github版本管理

    1.下载并安装github客户端http://git-scm.com/download/ 2.打开android studio,测试github是否使用ok 点击"test",如果 ...

  2. 解决URL路径包含+等特殊符号,编码也无效的办法

    <?xml version="1.0" encoding="UTF-8"?><configuration>      <syste ...

  3. css3实现进度条的模拟

    两种进度条动画的实现: 1.css3,但IE9-不支持. 2.js动画,兼容性好,但没有css3实现的顺畅 Demo: <html>    <head>        < ...

  4. U3D中IOS平台泛型方法尽少使用

    U3D的IOS最小运行库use micro mscorlib是不包含泛型反射方法的,如FieldType.GetGenericArguments方法.所以尽量少用List而直接使用array. 另外请 ...

  5. VMware的使用

    1.问题的提出   现在所有的组装台式机,均以64位操作系统作为平台   而且USB接口均以USB3.0默认   windows7 64位和windows 10 64位是主流   那么建立在windo ...

  6. 同时使用Twitter nlp 和stanford parser的解决方法

    因为Twitter nlp中使用了较老版本的stanford parser,导致不能同时使用 解决方法是使用未集成其它jar包的Twitter nlp,关于这点Stanford FAQ中也有说明(在F ...

  7. Java框架篇---Mybatis 入门

    一.Mybatis介绍 MyBatis是一款一流的支持自定义SQL.存储过程和高级映射的持久化框架.MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去设置参数和获取检索结果.MyBatis ...

  8. IIS6.0下 Asp.Net 拦截jpg请求

    之前用mvc写了一个接口,访问格式 http://ip:port/{id}-{type}.jpg来获取一个图片,在IIS7.0+运行毫无障碍,但是在IIS6.0下,直接提示文件不存在或者已删除. 经过 ...

  9. Bower 手册

    安装 Bower 使用 npm 安装 Bower.(Bower 依赖于 Node, npm 和 Git.) $ npm install -g bower 基本用法 安装程序包 程序包安装命令 bowe ...

  10. 二叉查找树(三)之 Java的实现

    概要 在前面分别介绍了"二叉查找树的相关理论知识,然后给出了二叉查找树的C和C++实现版本".这一章写一写二叉查找树的Java实现版本. 目录 1. 二叉树查找树2. 二叉查找树的 ...