![]() |
Jag skulle behöva hjälp med utskriften av flyttal i java.
Om talet är mellan 1 och 0 vill jag inte att den inledande 0:an ska skrivas ut om, t ex. 0.12 => .12 Har gjort några försök med printf men utan större framgång, Går det att formatera detta med printf eller måste man göra det på ett krångligare sätt? /Mathias |
Just java har jag ingen koll på, men formatsträngar brukar ju fungera på ungefär samma sätt oavsett språk och i så fall så är nog tyvärr lösningen att konvertera till ett heltal.
Givet C-syntax borde din format sträng se ut så här idag: Kod:
printf("%0.6f", value); Kod:
printf(".%d", value*1000000); Kod:
printf("%s.%d",value==1?"1":"",value==1?0:value*1000000); |
det går ju också att köra hela printgrejen genom en replacefunktion som ersätter 0. med ....
typ printf(replace(minText, "0.", ".")); (pseudokod).... inte speciellt snyggt, men det är bättre än inget ifall allt annat sviker. :) |
Alla tider är GMT +2. Klockan är nu 00:06. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson