KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I tried using Formatter.format, but that seems to leave the mantissa on numbers with 0 mantissa, whereas the C version does not. Is there an equivalent of C's %g format specifier in Java, and if not, is there a way to fake it? My intention is to preserve the mantissa exactly like C's for compatibility reasons. foo.c #include <stdio.h> int main (int argc, char const *argv[]) { printf("%g\n", 1.0); return 0; } Main.java class Main { public static void main(String[] args) { System.out.printf("%g\n", 1.0); } } Console: $ javac Main.java && java Main 1.00000 $ gcc foo.c && ./a.out 1 Similarly, with 1.2 as input, the mantissa is longer in Java's version $ javac Main.java && java Main 1.20000 $ gcc foo.c && ./a.out 1.2
Tags (comma-separated)
Save Edits
Cancel