精简jdk包

帖子“ 紧凑数字格式出现在JDK 12中 ”演示了对JDK 12中 NumberFormat的支持,以支持紧凑数字格式 。 该帖子中显示的示例仅使用NumberFormat的实例,这些实例是通过调用NumberFormat的新重载getCompactNumberInstance(-)方法返回的,因此没有指定诸如最小小数位和最大小数位之类的特性 。 在某些情况下,结果不理想。 幸运的是, NumberFormat确实允许指定最小和最大小数位,并且本文演示了如何改善JDK 12提供的紧凑数字格式的输出。

原始“ 紧凑型数字格式来到JDK 12 ”一文( 可在GitHub上找到 )中介绍的代码清单已更新,以演示NumberFormat.setMinimumFractionDigits(int)的使用 。 接下来是该代码的摘录,然后是随附的输出。

/*** Generates standardized map of labels to Compact Number Format* instances described by the labels. The instances of {@code NumberFormat}* are created with Locale and Style only and with the provided number* of minimum fractional digits.** @return Mapping of label to an instance of a Compact Number Format*    consisting of a Locale, Style, and specified minimum number of fractional*    digits that is described by the label.*/
private static Map<String, NumberFormat> generateCompactNumberFormats(final int minimumNumberFractionDigits)
{var numberFormats = generateCompactNumberFormats();numberFormats.forEach((label, numberFormat) ->numberFormat.setMinimumFractionDigits(minimumNumberFractionDigits));return numberFormats;
}/*** Demonstrates compact number formatting in a variety of locales* and number formats against the provided {@code long} value and* with a minimum fractional digits of 1 specified.* @param numberToFormat Value of type {@code long} that is to be*    formatted using compact number formatting and a variety of*    locales and number formats and with a single minimal fractional*    digit.*/
private static void demonstrateCompactNumberFormattingOneFractionalDigitMinimum(final long numberToFormat)
{final Map<String, NumberFormat> numberFormats = generateCompactNumberFormats(1);out.println("Demonstrating Compact Number Formatting on long '" + numberToFormat+ "' with 1 minimum fraction digit:");numberFormats.forEach((label, numberFormat) ->out.println("\t" +  label + ": " + numberFormat.format(numberToFormat)));
}
Demonstrating Compact Number Formatting on long '15' with 1 minimum fraction digit:Default: 15US/Long: 15UK/Short: 15UK/Long: 15FR/Short: 15FR/Long: 15DE/Short: 15DE/Long: 15IT/Short: 15IT/Long: 15
Demonstrating Compact Number Formatting on long '150' with 1 minimum fraction digit:Default: 150US/Long: 150UK/Short: 150UK/Long: 150FR/Short: 150FR/Long: 150DE/Short: 150DE/Long: 150IT/Short: 150IT/Long: 150
Demonstrating Compact Number Formatting on long '1500' with 1 minimum fraction digit:Default: 1.5KUS/Long: 1.5 thousandUK/Short: 1.5KUK/Long: 1.5 thousandFR/Short: 1,5 kFR/Long: 1,5 millierDE/Short: 1.500DE/Long: 1,5 TausendIT/Short: 1.500IT/Long: 1,5 mille
Demonstrating Compact Number Formatting on long '15000' with 1 minimum fraction digit:Default: 15.0KUS/Long: 15.0 thousandUK/Short: 15.0KUK/Long: 15.0 thousandFR/Short: 15,0 kFR/Long: 15,0 milleDE/Short: 15.000DE/Long: 15,0 TausendIT/Short: 15.000IT/Long: 15,0 mila
Demonstrating Compact Number Formatting on long '150000' with 1 minimum fraction digit:Default: 150.0KUS/Long: 150.0 thousandUK/Short: 150.0KUK/Long: 150.0 thousandFR/Short: 150,0 kFR/Long: 150,0 milleDE/Short: 150.000DE/Long: 150,0 TausendIT/Short: 150.000IT/Long: 150,0 mila
Demonstrating Compact Number Formatting on long '1500000' with 1 minimum fraction digit:Default: 1.5MUS/Long: 1.5 millionUK/Short: 1.5MUK/Long: 1.5 millionFR/Short: 1,5 MFR/Long: 1,5 millionDE/Short: 1,5 Mio.DE/Long: 1,5 MillionIT/Short: 1,5 MlnIT/Long: 1,5 milione
Demonstrating Compact Number Formatting on long '15000000' with 1 minimum fraction digit:Default: 15.0MUS/Long: 15.0 millionUK/Short: 15.0MUK/Long: 15.0 millionFR/Short: 15,0 MFR/Long: 15,0 millionDE/Short: 15,0 Mio.DE/Long: 15,0 MillionenIT/Short: 15,0 MlnIT/Long: 15,0 milioni

如上面的示例和输出所示,使用NumberFormat.setMinimumFractionDigits(int)可以生成紧凑的数字格式输出,在许多情况下,从美学角度来看,这种输出可能会更令人满意。 OpenJDK core-libs-dev邮件列表上最近有一个讨论“ 紧凑数字格式和小数位数 ”,该讨论还讨论了自定义紧凑数字格式输出的功能。

翻译自: https://www.javacodegeeks.com/2019/01/usingfractional-digits-compact-number.html

精简jdk包

精简jdk包_在JDK 12精简数字格式中使用最小分数数字相关推荐

  1. jdk安装教程_在JDK 12精简数字格式中使用最小分数数字

    jdk安装教程 帖子"紧凑数字格式出现在JDK 12中"演示了对JDK 12中NumberFormat的支持,以支持紧凑数字格式. 该帖子中显示的示例仅使用NumberFormat ...

  2. 在JDK 12精简数字格式中使用最小分数数字

    帖子" 紧凑数字格式出现在JDK 12中 "演示了对JDK 12中 NumberFormat的支持,以支持紧凑数字格式 . 该帖子中显示的示例仅使用NumberFormat的调用重 ...

  3. 精简jdk包_具有JDK 12精简数字格式的自定义精简数字模式

    精简jdk包 帖子" 紧凑数字格式出现在JDK 12中 "已经成为有关Java subreddit线程的讨论主题 . 在那个线程中表达的与紧凑数字格式表示有关的问题涉及显示的精度数 ...

  4. java logging包_用JDK中提供的java.util.logging.*包创建Logger对象----原创

    由于项目中用到了Applet与Servlet之间(客户端用Applet.Server端用Servlet)的通信,要求: 1:>客户端与服务端必须出Log. 2:>浏览器在加载Applet时 ...

  5. java项目中没有jdk包_彻底搞懂Java开发工具包(JDK)安装及环境变量配置

    一.Java 和 JDK 是什么 Java:Java是一种优秀的程序设计语言,它有非常多的语言特性,如简单性.面向对象.可移植性等.Java 并不只是一种语言,而是一个完整的平台,它有一个庞大的库,其 ...

  6. jep290涉及jdk版本_针对JDK 14提议的另外六个JEP

    jep290涉及jdk版本 Mark Reinhold最近的消息宣布了六个新的"建议针对JDK 14的JEP ": JEP 345 , JEP 361 , JEP 363 , JE ...

  7. java切换jdk版本_切换JDK版本quick

    最近遇到一个小问题,同时做两个项目,jdk版本一个是5,一个是6,我也去网上找了找方法,但是感觉不是特别好用,最后自己通过一些环境变量设置的技巧和一些批处理命令来使得这件事情只需要双击,输入一个数字回 ...

  8. linux mysql jdk路径_教大家在如何Centos7系统中安装JDK、Tomcat、Mysql(文末附马哥linux全套视频教......

    目录1.jdk的安装 2.tomcat的安装 3.mysql的安装 远程工具:SSH Secure File Transfer Client 远程工具的使用 下载地址:https://pan.baid ...

  9. jdk 加密_使用JDK的密码流的加密怪癖(以及该怎么做)

    jdk 加密 在我们的日常工作中,我们经常遇到经常性的主题,即将数据(例如文件)从一个位置传输到另一个位置. 这听起来像是一个非常简单的任务,但让我们通过声明这些文件可能包含机密信息并可以通过非安全的 ...

最新文章

  1. Django框架之第二篇
  2. 异常处理与MiniDump详解(3) SEH(Structured Exception Handling)
  3. 拯救你的久坐不起!用树莓派改造站立式办公桌:在随机时间升降,还有阻力检测功能...
  4. 2转单通道 python_机器学习用Python—Python集成工具包Anaconda安装步骤
  5. QT+FFMPEG实现视频播放
  6. hdu 4442 Physical Examination (2012年金华赛区现场赛A题)
  7. SetConsoleCursorPosition光标的位置控制
  8. LeetCode LCP 22. 黑白方格画
  9. lisp删除块中图元_DeleteBlocks
  10. xpath修复html错误,【python】xpath解析html文件报错:lxml.etree.XPathEvalError: Invalid expression...
  11. python模拟内置函数all_python内置函数all和any
  12. 我们怎么样把pdf格式转换成dwg格式呢
  13. 硬盘柱面损坏怎么办_硬盘扇区损坏怎么办
  14. Synch4j使用指南
  15. Flink入门(五) 实时流Join ElasticSearch6维度表
  16. 【正则表达式】去除首尾空格
  17. 图形化WiFi密码的破解
  18. Golang开发新手常犯的50个错误
  19. AtCoder Beginner Contest 163 A Circle Pond 圆周率
  20. 发图之梅梅的设计图——继续纠结飞机稿

热门文章

  1. [2020-11-30 contest]数列(矩阵加速),秘密通道(dijkstra最短路)小X游世界树(换根dp),划分(数学)
  2. YBTOJ:字符串匹配(KMP)
  3. P3246 [HNOI2016]序列(莫队+单调栈+ST表)
  4. 2018CCPC吉林赛区(重现赛)补题部分——F线段树待补
  5. 【数论】Crash的数字表格 / JZPTAB(P1829)
  6. [bzoj 4811] 由乃的OJ(贪心 + 树链剖分)
  7. 网络流及建模专题(下)
  8. 18、java中的泛型
  9. 漫画:什么是拜占庭将军问题
  10. 如何轻松愉快的理解条件随机场(CRF)