2015-06-22 56 views
0

在Java中,如何使用print或printf將A行文本的第一個輸出作爲「Character Name:」(默認情況下向左對齊),然後顯示字符串值(char1)要排列在屏幕的右側,還是要排列在列的右側?即:將預定義文本對齊到左側,並顯示與右側對齊的字符串。 Java

Character Name:      char1 

    Character Value:     charValue 

ps。如果有幫助,我正在使用eclipse。

+0

閱讀[Formatter'類的文檔](http://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html)中的字段寬度, printf'用於格式化。 – RealSkeptic

+0

對不起,我的答案我認爲這是因爲printf! – maccartm

回答

1
System.out.format("Character Name: %25s", x); 
System.out.format("Character Value: %24s", y); 

你將不得不亂搞格式來決定你必須包括多少空間;它將取決於左對齊詞的長度。但使用格式%s默認情況下是正確的,或者如果使用%-s則可以左對齊。 %之間的數字& s是之間的空格數量。

+0

謝謝你,但是使用'%25s'的例子,char1和charValue的值在長度上會有很大的不同,因爲我特別希望字符串的輸出對齊。我本身嘗試使用%s,但沒有正確對齊。 感謝您的建議,但! – jams

+0

你需要使用格式化,以便他們都匹配,我不認爲有辦法自動執行它。例如,除非您選擇一定數量的空格,並根據第一個單詞的長度添加/取消該數量。例如,在我的解決方案中,第一行中的第一個「%」符號(從「C」到「'」)之間有17個字符。第二行中有18個字符,因爲「值」是一個字母所以在第二行我使用'%24s',你可以寫一個快速腳本來爲你計算。 – maccartm

相關問題