자바 초보자가 도움을 찾고 있습니다. 재귀 Java 프로그램의 새로운 객체 생성
public void generateCodeTable(Node tree, StringBuffer buf) {
if (tree != null) {
StringBuffer newSB = new StringBuffer();
newSB.append(buf);
if (tree.key != '$') {
System.out.print(tree.key + "(" + buf + ") ");
} else {
System.out.print(tree.key + "(" + buf + ") ");
}
generateCodeTable(tree.getLeftNode(), newSB.append(1));
generateCodeTable(tree.getRightNode(), newSB.append(0));
}
이 지속적 내가 할 수 있도록하고 싶습니다 정말로 재귀 루프의 각 반복에서 동일한의 StringBuffer에 추가됩니다 무엇 그것이 브랜드를 만들 수 있습니다
: 여기에 문제의 코드는 - 새로운 StringBuffer. 새로운 StringBuffer를 강제적으로 생성하는 방법은 없습니까?그 의미가 되길 바랍니다. 내가 분명히 할 수있는 곳을 알려줘. 고맙습니다! :)
는
같은 StringBuffer를 사용한다고 생각하게 만드는 이유는 무엇입니까? 재귀의 각 쌍은 새 데이터를 추가하는 것이지만 이전 데이터를 새 데이터에 추가합니다. –
나는 혼란스러워. 함수가 반복 될 때마다 새 StringBuffer를 만드는 것처럼 보입니다. (온라인 3). 어쩌면 당신이 성취하고자하는 것을 묘사하는 것이 더 합리적 일 것입니다. – kenj0418