File tree Expand file tree Collapse file tree 3 files changed +54
-7
lines changed
java-12/src/main/java/com/ibrahimatay Expand file tree Collapse file tree 3 files changed +54
-7
lines changed Original file line number Diff line number Diff line change @@ -31,6 +31,10 @@ This repository contains Java examples that are designed to track and document t
3131* [ Java 16] ( java-16/ ) (March, 2021)
3232 * [ JEP 395] ( java-16/src/main/java/com/ibrahimatay/JEP395Records.java ) : Records
3333
34+ * [ Java 12] ( java-12/ ) (March, 2019)
35+ * API Improvements
36+ * [ Compact Number Formatting] ( java-12/src/main/java/com/ibrahimatay/CompactNumberFormatting.java )
37+
3438* [ Java 11] ( java-11/ ) (September, 2018)
3539 * [ JEP 181] ( java-11/src/main/java/com/ibrahimatay/JEP181NestBasedAccessControl.java ) : Nest-Based Access Control
3640 * [ JEP 318] ( java-11/src/main/java/com/ibrahimatay/JEP318MemoryPolluter.java ) : Epsilon: A No-Op Garbage Collector
Original file line number Diff line number Diff line change 1+ package com .ibrahimatay ;
2+
3+ import java .text .CompactNumberFormat ;
4+ import java .text .DecimalFormat ;
5+ import java .text .NumberFormat ;
6+ import java .text .ParseException ;
7+ import java .util .Locale ;
8+ import java .util .*;
9+
10+ public class CompactNumberFormatting {
11+
12+ // Compact Number Formatting support
13+ // https://bugs.openjdk.org/browse/JDK-8188147
14+
15+ // Compact Number Formatting Comes to JDK 12
16+ // https://marxsoftware.blogspot.com/2019/01/jdk12-custom-number-formatting.html
17+
18+ public static void main (String [] args ) throws ParseException {
19+ NumberFormat fmt = NumberFormat .getCompactNumberInstance (Locale .US , NumberFormat .Style .LONG );
20+
21+ System .out .println (fmt .parse ("100" ));
22+ System .out .println (fmt .parse ("1 thousand" ));
23+ System .out .println (fmt .parse ("10 thousand" ));
24+ System .out .println (fmt .parse ("100 thousand" ));
25+
26+ /*
27+ Result:
28+ 100
29+ 1000
30+ 10000
31+ 100000
32+ */
33+ NumberFormat minimumFractionDigits = NumberFormat .getCompactNumberInstance (Locale .US , NumberFormat .Style .SHORT );
34+ minimumFractionDigits .setMinimumFractionDigits (3 );
35+
36+ System .out .println (minimumFractionDigits .format (10000 ));
37+ System .out .println (minimumFractionDigits .format (10012 ));
38+ System .out .println (minimumFractionDigits .format (100201 ));
39+ System .out .println (minimumFractionDigits .format (1111111 ));
40+
41+ /*
42+ Result:
43+ 10.000K
44+ 10.012K
45+ 100.201K
46+ 1.111M
47+ */
48+ }
49+ }
50+
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments