User Tools

Site Tools


java:formatting

This is an old revision of the document!


Μορφοποίηση Εξόδου

Σημείωση: Τα μόνα PrintStream αντικείμενα που είναι πιθανό να χρειαστείτε είναι τα System.out και System.err. Όταν χρειάζεται να δημιουργήσετε ένα διαμορφωμένο stream εξόδου, χρησιμοποιήστε PrintWriter, και όχι PrintStream.

Όπως όλα τα αντικείμενα streams byte και χαρακτήρων, περιπτώσεις PrintStream και PrintWriter εφαρμόζουν ένα τυποποιημένο σύνολο μεθόδων εγγραφής για απλή έξοδο byte και χαρακτήρα. Επιπλέον, τόσο η PrintStream όσο και η PrintWriter εφαρμόζουν το ίδιο σύνολο μεθόδων για τη μετατροπή των εσωτερικών δεδομένων σε μορφοποιημένη έξοδο. Δύο δυνατότητες μορφοποίησης παρέχονται:

  • To print και println μορφοποιεί μεμονωμένες τιμές σε έναν τυποποιημένο τρόπο.
  • Το format μορφοποιεί σχεδόν οποιοδήποτε πλήθος τιμών βασισμένο σε ένα string μορφοποίησης ανάλογο με αυτό της printf στην γλώσσα C.

Οι print και println Μέθοδοι

Η κλήση των print ή println λαμβάνει ως όρισμα ένα String. Εάν υπάρχουν ορίσματα στις δύο αυτές μεθόδους που δεν είναι του τύπου String, τότε καλείται η μέθοδος toString(), προκειμένου να μετατραπούν τα ορίσματα σε String. Μπορείτε να δείτε το παρακάτω παράδειγμα:

Root.java
public class Root {
    public static void main(String[] args) {
        int i = 2;
        double r = Math.sqrt(i);
 
        System.out.print("The square root of ");
        System.out.print(i);
        System.out.print(" is ");
        System.out.print(r);
        System.out.println(".");
 
        i = 5;
        r = Math.sqrt(i);
        System.out.println("The square root of " + i + " is " + r + ".");
    }
}

Αυτή είναι η έξοδος της Root:

The square root of 2 is 1.4142135623730951.
The square root of 5 is 2.23606797749979.

Η Μέθοδος format

Η μέθοδος format μορφοποιεί πολλαπλά στοιχεία που βασίζονται σε ενα string μορφής. Το string μορφής αποτελείται από static κείμενο με ενσωματωμένα προσδιοριστικά μορφής. Εκτός των προσδιοριστικών μορφής, το string μορφής είναι αμετάβλητο της εξόδου.

Τα strings μορφής υποστηρίζουν πολλές δυνατότητες. Εδώ, θα καλύψουμε μόνο κάποια βασικά.

Το παράδειγμα Root2 μορφοποιεί δύο τιμές με μία μόνο κλήση της format:

Root2.java
public class Root2 {
    public static void main(String[] args) {
        int i = 2;
        double r = Math.sqrt(i);
 
        System.out.format("The square root of %d is %f.%n", i, r);
    }
}

Αυτή είναι η έξοδος:

The square root of 2 is 1.414214.

Όπως και τα τρία που χρησιμοποιούνται σε αυτό το παράδειγμα, όλα τα προσδιοριστικά μορφής αρχίζουν με ένα % και τελειώνουν με μια μετατροπή 1- ή 2- χαρακτήρων που καθορίζει το είδος της μορφοποιημένης εξόδου που παράγεται. Οι τρεις μετατροπές που χρησιμοποιήθηκαν εδώ είναι:

  • το d μορφοποιεί μια τιμή integer ως μια δεκαδική τιμή.
  • το f μορφοποιεί μια floating point τιμή ως μια δεκαδική τιμή.
  • το n εξάγει έναν platform-specific τερματιστή γραμμής .

Εδώ είναι κάποιες άλλες μετατροπές:

  • το x μορφοποιεί έναν integer ως μια δεκαεξαδική τιμή.
  • το s μορφοποιεί κάθε τιμή σε ένα string.
  • το tB μορφοποιεί έναν integer σε ένα locale-specific όνομα μήνα.
Προηγούμενο: Streams Χαρακτήρων Επόμενο: Η κλάση Path
java/formatting.1425992048.txt.gz · Last modified: 2015/03/10 12:54 by gthanos