2017-11-08 8 views
-2

기본 테이블을 만들었으며 표의 토큰을 제목 아래에 서식을 지정하려고합니다. 여기에 내가 가진 무엇 :문자열 출력 형식을 지정하는 방법

NAME TYPE LINE# 
a prod 1 

이 내가하고 싶은 것입니다 :

NAME TYPE LINE# 
a prod 1 
내가 System.out.printf을 (알고

) 될 것이다 이상적인 방법을 내 문자열의 형식을,하지만하지 않습니다 메인 클래스에있는 내 코드로 작업하십시오. String 배열을 만들었고 내가 만든 (.prod 1) .toString 메서드를 사용하여 인쇄했습니다.

public class Symbol { 

    String type; 
    String name; 
    int lineNum; 

    // toString method 
    public String toString() { 
     return name + " " + type + " " + Integer.toString(lineNum); 
    } 
} 

는 및 String.format 중 하나가 작동하지 않습니다

for (int j = 0; j < numOfSym; j++) { 
    System.out.println(symbols[j].toString()); 
} 

가 여기 내 심볼 클래스입니다 : 여기 내 코드입니다. printf()가 최선의 선택일까요? 도움이나 링크가 도움이 될 것입니다.

+0

그것은 자바 독의 모든하지만 그것은 몇 가지 연구가 필요합니다. [도움말]을 방문하여 [ask]를 읽어 보시고 여기에 게시 지침을 알려주십시오. (우수) 문서를 읽음으로써 대답 할 수있는 질문은 주제와 관련이없는 것으로 간주됩니다. –

답변

1

좋아요?

System.out.println("NAME TYPE LINE# "); 
String[][] data = {{"a", "prod", "1"}, {"b", "prod", "2"}};   

for (int i = 0; i < data.length; i++) { 
    System.out.println(String.format("%-5s %-5s %-5s", data[i][0], data[i][1], data[i][2])); 
} 

또는 당신이 (당신의 Symbol 클래스 내에서) 선호하는 경우 :

@Override 
public String toString() { 
    return String.format("%-5s %-5s %-5s", type, name, lineNum); 
} 
관련 문제