Muotoilu Numeerista Tulosta Output

Muotoilu Numeerista Tulosta Output

Aiemmin näit käyttö print ja println menetelmät tulostus jouset standard output (System.out). Koska kaikki numerot voi olla muuntaa jousille (kuten näette myöhemmin tällä oppitunnilla), voit käyttää näitä menetelmiä tulostaa mielivaltaisen sekoitus merkkijonoja ja numeroita., Java-ohjelmointikielellä on kuitenkin muita menetelmiä, joiden avulla voit hallita tulostettasi huomattavasti enemmän, kun numerot ovat mukana.

printf ja muodon Menetelmät

java.io paketti sisältää PrintStream luokka, joka on kaksi muotoilun menetelmiä, joita voit käyttää korvata print ja println. Nämä menetelmät, format ja printf, vastaavat toisiaan., Tuttu System.out, joka on ollut käytössä sattuu olemaan PrintStream objekti, joten voit vedota PrintStream menetelmiä System.out. Näin voit käyttää format tai printf tahansa koodi, jos sinulla on aiemmin ollut käytössä print tai println., Esimerkiksi,

System.out.format(.....);

syntaksi nämä kaksi java.io.PrintStream menetelmät on sama:

public PrintStream format(String format, Object... args)

jossa format on merkkijono, joka määrittää muotoilua käytetään ja args on luettelo muuttujat voidaan tulostaa käyttäen, että alustaminen. Yksinkertainen esimerkki olisi,

ensimmäinen parametri, format, on string-muodossa, jossa täsmennetään, miten esineet toinen parametri, args, ovat alustamaan., Muotoile merkkijono sisältää pelkkää tekstiä sekä muoto suunnittelijat, jotka ovat erityisiä merkkejä, jotka muodossa väitteet Object... args. (Notaatio Object... args on nimeltään varargs, jolloin argumenttien määrä voi vaihdella.)

formaatin määrittelyt alkavat prosenttimerkillä (%) ja päättyvät muuntimella. Muunnin on merkki, joka ilmaisee muotoiltavan argumentin tyypin. Prosenttimerkin (%) ja muuntimen välissä voi olla valinnaisia lippuja ja tarkennuksia., On olemassa monia muuntimet, liput, ja suunnittelijat, jotka on dokumentoitu java.util.Formatter

Tässä on perus esimerkki:

int i = 461012;System.out.format("The value of i is: %d%n", i);

%d määrittää, että yksittäinen muuttuja on kymmenjärjestelmän kokonaisluku. %n on alustariippumaton newline-merkki. Tuotos on:

The value of i is: 461012

printf ja format menetelmät ovat ylikuormitettuja., Jokaisella on versio, jossa on seuraava syntaksi:

public PrintStream format(Locale l, String format, Object... args)

tulostaa numerot, ranskan järjestelmä (jossa käytetään pilkkua sijasta desimaalin tarkkuudella englanti edustus liukulukuja), esimerkiksi, voit käyttää:

Esimerkki

seuraavassa taulukossa luetellaan joitakin muuntimet ja liput, joita käytetään näyte-ohjelman, TestFormat.java, joka seuraa pöydän.,

Converters and Flags Used in TestFormat.java
Converter Flag Explanation
d A decimal integer.
f A float.
n A new line character appropriate to the platform running the application. You should always use %n, rather than \n.,
tt päivämäärä & aika muuntaminen—locale-erityisiä koko nimi kuussa.
td, te – päivämäärä & aika muuntaminen—2-numeroinen kuukauden päivä. td johtaa tarvittaessa nollia, te ei.
ty, tY päivämäärä & aika muuntaminen—ty = 2-numeroinen vuotta, tY = 4-numeroinen vuosi.
tl päivämäärä & aika muuntaminen—tunnin ja 12-tunnin kello.,
tM päivämäärä & aika muuntaminen—minuuttia 2 numeroa, johtavien nollia tarpeen mukaan.
tp päivämäärä & aika muuntaminen—locale-erityisiä am/pm (lower case).
tm päivämäärä & aika muuntaminen—kuukautta 2 numeroa, johtavien nollia tarpeen mukaan.,
tD A date & time conversion—date as %tm%td%ty
08 Eight characters in width, with leading zeroes as necessary.
+ Includes sign, whether positive or negative.
, Includes locale-specific grouping characters.
Left-justified..
.3 Three places after decimal point.
10.,3 kymmenen merkkiä leveydeltään oikeaoppisesti, kolme desimaalin tarkkuudella.

seuraava ohjelma osoittaa joitakin muotoilu, että voit tehdä format. Lähtö on osoittaneet sisällä lainausmerkkeihin upotettu kommentti:

Huom: keskustelu tämä osio kattaa vain perusasiat format ja printf menetelmiä. Tarkemmin löytyy Basic I/O osa Välttämättömiä trail, vuonna ”Alustaminen” sivulla.,
String.format merkkijonojen luomiseen käytetään merkkijonoja.

Ja DecimalFormat Luokan

Voit käyttää java.text.DecimalFormat class hallita näytön johtava ja perään nollia, etuliitteitä ja päätteitä, ryhmittely (tuhansia) erotin ja desimaalierotin. DecimalFormat tarjoaa paljon joustavuutta muotoilua numerot, mutta se voi tehdä koodia enemmän monimutkainen.,

seuraava esimerkki luo DecimalFormat objekti myFormatter, johtamalla kuvio merkkijono DecimalFormat rakentaja., format() menetelmä, jossa DecimalFormat perii NumberFormat, sitten vedonneet myFormatter—se hyväksyy double arvo argumenttina ja palauttaa alustettu numero, merkkijono:

Tässä on näyte ohjelma, joka havainnollistaa käyttöä DecimalFormat:

lähtö on:

123456.789 ###,###.### 123,456.789123456.789 ###.## 123456.79123.78 000000.000 000123.78012345.67 $###,###.### $12,345.67

seuraava taulukko kertoo kunkin rivin tuotoksen.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *