0
public static void diamondOfAsterisks(int numOfRows){
String diamondStr="";
for (int row = 1; row == (numOfRows/2+1); row++){
for (int space = numOfRows; space < row; space--){
diamondStr += " ";
}
for (int stars = 1; stars >= (2 * row) - 1; stars++){
diamondStr+= "*";
}
diamondStr+="\n";
}
for (int row = numOfRows/2 ; row >= 1; row--){
for (int space = numOfRows; space > row; space--){
diamondStr += " ";
}
for (int stars = 1; stars <= (2 * row)-1; stars ++){
diamondStr += "*";
}
diamondStr += "\n";
}
System.out.print(diamondStr);
별표로 만든 다이아몬드를 작성하는 Java 프로그램을 작성하고 있습니다. 위의 코드는 나에게 제공되는 가상 코드를 기반으로합니다. 그러나 Java 8u25가 설치된 NetBeans 8.0.1 (IDE의 문제는 아닌 것 같군요)에서 첫 번째 for 루프는 diamondStr에 아무 것도 추가하지 않는 것 같습니다. 내가 잘못 이해하거나 잘못하고있는 것은 무엇입니까?문자열을 추가하는 두 개의 내부 for 루프가있는 outer for for for 루프와 첫 번째 루프는 아무 것도하지 않습니다.
아니요 루프를 종료하는 조건은 행 == (numOfRows/2 + 1)이 아닙니다. for 루프 구문은 다음과 같습니다 (초기화, 종료 조건, 증가) {statements} –
아니요, 여기를보십시오. http://www.tutorialspoint.com/java/java_loop_control.htm 사실, for 루프를 실행할 것입니다. –
OK 당신이 말하는 것을 보았습니다.하지만이 변경을하면 무한 루프가 실행되는 것 같습니다. –