-3
내 메서드에서 매개 변수로 문자열을 가지고 있고 내가 succeded 문자열의 길이를 인쇄하려고하지만 길이가 10보다 작 으면 길이 앞에 0을 더하고 싶습니다.길이가 10보다 작은 경우 String.length 메서드의 출력에 0을 추가하는 방법은 무엇입니까?
int를 참조 할 수없는 오류가 발생했습니다.이 작업을 수행하는 올바른 방법이 무엇인지 확실하지 않습니다.
public void sendMessage(String message) throws ProtocolException {
physicalLayer.sendFrame("<" + "E" + "-"
+ message.length().toString().padleft(2, '0')
+ "-" + message + "-" + "00" + ">");
}
감사
원시 유형의 방법이 없습니다. 따라서 int에서 toString()을 호출 할 수 없습니다. Google은 int를 문자열로 변환하는 방법을 알려줍니다. String에는 padLeft() 메서드가 없습니다. javadoc를 읽는 대신 가상의 메서드를 호출하는 것 같습니다. 그러지 마. 그것은 당신을 아무데도 이끌지 않을 것입니다. –
'message.length()'는 어떤 메소드도 가지고 있지 않은 원시 형'int'를 반환합니다. (즉,'.toString()'이 없습니다.)'Formatter' 또는'Integer.valueOf (message.length())' –
나는 그것을 얻는다, 당신의 도움에 감사드립니다. –