/ / Formátovanie desatinných hodnôt pomocou String v Jave - java, android, formátovanie, formátovanie reťazcov

Formátovanie desatinných hodnôt pomocou reťazca v jazyku Java - java, android, formátovanie, formátovanie reťazcov

Som nováčikom v programovaní pre Android a JavaProsím, odpusť mi, ak je to ľahká otázka. Môj problém je pridať% na koniec desatinnej hodnoty. Dostanem dvojnásobnú hodnotu a neviem, koľko číslic za desatinnou čiarkou musím previesť na dve číslice za desatinnou čiarkou a nakoniec musím pridať% na poslednú pozíciu. Problém je, že dvojitú hodnotu naformátujem iba raz. Skúsil som ako tento DecimalFormat ("#. ##%"), ale desatinné body sa posunuli o dve číslice vpred. Pomôžte mi dostať sa z tohto problému.

Pomocou DecimalFormat ("#. ##%"),

Skutočne: 34,142545

Výstup: 3414,25%

odpovede:

1 pre odpoveď č. 1

Ak používate % vo formáte to znamená, že chcete previesť hodnotu na percento, ale musíte si túto hodnotu pamätať 1 v percentách sveta sa rovná 100% hodnota, ktorú použijete, sa preto automaticky vynásobí 100. Aby ste sa tomuto správaniu vyhli, môžete zmeniť % do doslovného citovania s apostrofami "%"

new DecimalFormat("#.##"%"");

1 pre odpoveď č. 2

Pridaním% vo formáte vynásobíte 100 a pridáte znak%. Preto to vyzerá, že sa pohybuje desatinná čiarka.

Môžete použiť niečo ako:

String output = new DecimalFormat("#.##").format(input) + "%";

Alternatívou je pred formátovaním deliť 100:

String output = new DecimalFormat("#.##%").format(input / 100.0);