2012-02-01 12 views
9

Esiste un carattere all'interno dell'API Math che consente di rappresentare il carattere π?Come digitare π (pi) in Java?

+0

Oh scusa, in un JOptionPane.showMessageDialog (null, String) con il carattere pi nella stringa. Ma Louis qui sotto ha risposto. :) –

+3

Il carattere corretto per rappresentare π è ovviamente π stesso. Non usare brutte fughe che confondono le persone. Usa semplicemente UTF-8 per la tua fonte. – tchrist

risposta

21

Non c'è nemmeno bisogno di utilizzare l'API Math. Nel codice sorgente di Java, in questo modo:

\u03C0 

è equivalente a questo:

π 

e addirittura si può utilizzare in un identificatore; questi due sono equivalenti:

final String \u03C0 = "\u03C0"; 
final String π = "π"; 

(Mentre spec mette:

Un Unicode fuga del modulo \u xxxx, dove xxxx è un valore esadecimale, rappresenta l'UTF-16 unità di codice la cui codifica è xxxx. Questo passaggio di conversione consente di esprimere qualsiasi programma utilizzando solo caratteri ASCII

.

Vedi http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.2)

+0

Questo è corretto! Grazie :) –

+4

Non sapevo che puoi usare i caratteri Unicode per le variabili. Ah, sarebbe un bel modo per infastidire i miei colleghi – Luciano

+1

Basta inserirlo nel vero UTF-8. Devi compilare con -encoding UTF-8, ma così via. Almeno ora può essere letto. – tchrist

3

Se volete scrivere questo in un file si può ottenere attraverso Unicodes, sotto è un esempio di come,

import java.io.*; 
public class Test { 

    public static void main(String[] args) throws Exception{ 
     BufferedWriter out = 
        new BufferedWriter(new OutputStreamWriter(
          new FileOutputStream("out.txt"),"UTF8"));  

    out.write("alpha = \u03B1, beta = \u03B2 ,pi = \u03C0"); 
    out.flush(); 
    out.close(); 
} 
} 

fuori messo: alpha = α, beta = β , pi = π