사용자가 숫자를 입력하는 클래스에 대한 문제를 해결하고 있으며 1000 이상인 경우 쉼표를 추가해야합니다. 따라서 사용자가 12300을 입력하면 출력은 12,300이됩니다. 1 백만 미만의 숫자를 처리하는 방법을 알아 냈지만 1234567과 같은 숫자를 입력하면 전혀 인쇄되지 않습니다. 메소드의 코드는 다음과 같습니다.Java 재귀 예제
public static String commas(long l) {
String s = "";
String pt1;
String pt2;
long pt1Number;
long pt2Number;
if (l < 1) {
return String.valueOf(l);
} else {
pt1Number = l/1000;
pt2Number = l % 1000;
if (pt1Number < 1000) {
pt1 = String.valueOf(pt1Number);
pt2 = String.valueOf(pt2Number);
s = pt1 + "," + pt2;
} else {
commas(pt1Number);
}
}
return s;
}
}
내 코드에 어떤 문제가 있는지 누가 알 수 있습니까?
네, 도와 줘서 고마워. 하지만 정확하게 "pt2Number == 0l"입니까? "000": "do? 나는 아직 배운 적이 없다. –
@BenjaminPorter'c = condition? a : b'' =''조건이 참이면 c = a, else c = b' – Kent