2013-03-09 12 views
10

Chcę wydrukować odwrócone cudzysłowy w języku Java. Ale jak to wydrukować?Jak dodać "" cytaty wokół drukowanego ciągu?

for(int i=0;i<hello.length;i++) { 
    String s=hello[i].toLowerCase().trim(); 
    System.out.println(""+s+""); 
} 

spodziewać OP: „hi” .....

+1

Proszę szukać pierwsze: http://stackoverflow.com/questions/3844595/how-can-i-make-java-print-quotes-like-hello, http://stackoverflow.com/a/2018583/166390 –

+0

Pytanie tutaj dotyczy ** odwróconych ** kwotowań, które nie są duplikat powyższych linków. –

Odpowiedz

13

ponieważ cudzysłowy wytyczają wartości String, naturalnie trzeba uciec t hem kodować dosłownego podwójny cudzysłów, jednak można to zrobić bezuciekającego tak:

System.out.println('"' + s + '"'); 

Tutaj podwójnych cudzysłowów (") zostały zakodowane jako char wartości. Uważam, że ten styl jest łatwiejszy i czytelniejszy niż "niezgrabne" podejście do backslashingu. Jednak tego podejścia można używać tylko wtedy, gdy dołączana jest stała znakowa pojedyncza, ponieważ "znak" to (oczywiście) dokładnie jedna postać.

10

Jak cytaty są wykorzystywane w kodzie źródłowym Javy do reprezentowania ciąg, trzeba uciec ich do tworzenia znaków, który zawiera cytat

System.out.println("\""+s+"\""); 
4

musisz uciec cytaty: \"

+1

s/must/could/p .... istnieją inne alternatywy –

2

Jeśli naprawdę szukasz odwróconych cudzysłów, użyj tego:

System.out.println('\u201C' + s + '\u201D'); 

to będzie wyjście “hi” nie "hi".

Musisz jednak zainstalować czcionkę, która to obsługuje, w przeciwnym razie możesz otrzymać skrzynkę lub coś takiego. Większość czcionek Windows ma.

3

Zakładając, że przez „Odwrócony” cytuje chodziło „left” i „right” konkretne cudzysłowów, można zrobić to tak:

System.out.println('\u201C'+s+'\u201D'); // Prints: “s” 
System.out.println('"'+s+'"');   // Prints: "s" 
Powiązane problemy