비디오: [자바 기초 강의] 13강 중첩 for문 (SONOL) 2024
자바 수수께끼가 있습니다: 당신은 두 개의 야구 팀, 한니와 양말을 가지고 있습니다. 팀의 점수를 두 줄로 나누어 표시하고 승자의 점수를 먼저 표시하려고합니다. (컴퓨터 화면에서 승자의 점수는 패자의 점수 위에 표시됩니다.) 점수가 매겨지면 어떻게됩니까?
당신은 포기합니까? 대답은 정답이 없다는 것입니다. 어떤 일이 일어나는가는 프로그램을 작성하는 방식에 달려 있습니다. 점수가 동일하면
양키
조건은
거짓
입니다. 따라서 프로그램의 실행 흐름은
else
절로 떨어집니다. 그 조항은 Socks 점수를 먼저 표시하고 Hankees 점수를 초 표시합니다.
importjava. util. 스캐너;
import static java. 랭. 체계. 에서;
import static java. 랭. 체계. 아웃;
classTwoTeams { public static void main (String args []) {
스캐너 키보드 = 새 스캐너 (
에서 ); 인턴, 양말;
한자 = 키보드. nextInt ();
양말 = 키보드. nextInt ();
. println ();
if (hankees> socks) { 아웃. 인쇄 ("Hankees:");
. println (hankees);
. print ("양말:");
아웃. println (양말);
out. print ("양말:");
. println (양말);
. 인쇄 ("Hankees:");
. println (hankees);
}
키보드. 닫기();
}
}
프로그램은 이런 방식으로 작동 할 필요가 없습니다. 이 코드를 취하여
hankees>
를
hankees> = socks
로 변경하면 동점 일 경우 한니에스 점수가 먼저옵니다.
좀 더 제어하기를 원한다고 가정 해보십시오. 점수가 동일하면
넥타이
메시지를보고 싶습니다. 이렇게하려면 세 갈래의 포크로 생각하십시오. 당신은 한키의 승리를위한 갈퀴, 양말의 승리를위한 또 다른 갈기, 그리고 넥타이의 세 번째 갈퀴가 있습니다. 이 코드를 여러 가지 방법으로 작성할 수 있지만, 많은 의미를 만드는 한 가지 방법은 아래 코드입니다.
가, 팀,가!
import java. util. 스캐너;
클래스 WinLoseOrTie {
public static void main (String args []) {
스캐너 키보드 = 새 스캐너 (시스템 내부);
int hankees, 양말;
. print ("Hankees and Socks scores?");
한자 = 키보드. nextInt ();
양말 = 키보드. nextInt ();
. println ();
(hankees> socks)면
. println ("Hankees win …"); . 인쇄 ("Hankees:");
. println (hankees);
. print ("양말:");
. println (양말);
}
else if
(양말> hankees) { println ("Socks win …"); . print ("양말:");
. println (양말);
. 인쇄 ("Hankees:");
println (hankees);
else
{ println ("넥타이입니다 …"); . 인쇄 ("Hankees:");
. println (hankees);
. print ("양말:");
. println (양말);
}
키보드. 닫기();
}
}
이 코드는 문제에 대해 생각하는 방법을 보여줍니다. 세 가지 질문에 하나 이상의 답이 있습니다. 질문은 "누가 이긴다"이고 대답은 "한키", "양말"또는 "둘 다"입니다. 문제는 if 문을 요구하지만
문에는 분기가 두 개뿐입니다.
true
브랜치와
false
브랜치가있다. 따라서
if
문을 계단식으로 배열하는 대안을 결합합니다. -
)
SomeStatements
조건 2
) { 기타 문장
} else { EvenMoreStatements }
일반적으로
: - (hankeesWin)
(out) 인 경우
println ("Hankees win …");
. 인쇄 ("Hankees:");
. println (hankees);
. print ("양말:");
. println (양말);
} else if
{ out. println ("Socks win …");
아웃. print ("양말:");
. println (양말);
. 인쇄 ("Hankees:");
println (hankees);
} else if (isATie) {
out. println ("넥타이 …");
. println (hankees);
. print ("양말:");
. println (양말);
(gameCancelled)
{
} else {
out. println ("아직 끝나지 않았습니다.");
-
}
문을 계단식으로 배열하는 경우 특별한 것은 없습니다. 이것은 새로운 프로그래밍 언어 기능이 아닙니다. 명령문이 자바의 허점을 이용하는 경우 계단식
문을 사용하면 코드 내의 의사 결정에 대해 새로운 방식을 생각해 볼 수 있습니다.
-