제어 구조를 심도있게 배우기 전에 먼저 블록의 역할을 이해해야 합니다.
정의: 한 쌍의 중괄호로 묶인 여러 Java 문으로 구성된 문입니다.
기능: 블록은 변수의 범위를 결정하며, 한 블록은 다른 블록에 중첩될 수 있습니다.
예:
package decom1; public class cuowu { public static void main(String[] args) { //第二个块嵌套在第一个块里面。 byte i = 12; //变量i只在第二个块区域内有作用包括嵌套里面的块。 { //第三个块嵌套在第二个块里面同时也在第一个块里面。 int a = 3; //变量a只在所在的块起到作用。 System.out.println(a); } //写在main(程序执行的入口)里面的代码块,就称为局部代码块。 //局部代码的作用:能够让变量更早的在内存中消失,节省内存空间。 System.out.println(i); } }
두 개의 중첩 블록에서 동일한 이름을 가진 변수를 선언할 수 없습니다.
예:
package decom1; public class cuowu { public static void main(String[] args) { byte i = 12; { int i = 3; //报错:Duplicate local variable i } System.out.println(i); } }
조건문에는 세 가지 형식이 있습니다. 아래에서 어떤 형식인지 알아보겠습니다.
if (조건식) { 문 본문; }
Java의 조건문 표현 형식:
if(조건) 문
여기의 조건은 괄호로 묶어야 합니다.
조건식의 최종 결과는 true 또는 false의 부울 유형만 될 수 있습니다.
프로세스:
1. 프로그램이 if 문을 실행하면 조건식의 결과가 참인지 거짓인지 확인합니다.
2. true이면 if를 입력하고 내부의 문 본문 내용을 실행합니다.
3. false인 경우 if가 입력되지 않으며 내부의 문 본문 내용이 실행되지 않습니다.
package com; public class liu { public static void main(String[] args) { int i = 1; int j = 2; if(i > j) { System.out.println(i); } System.out.println(j); //由于i>j不成立,所以不执行if里面的语句,直接跳过执行外面的语句。 } }
if(조건식){ 문 본문; }else{ 문 본문; }
문 표현 형식:
if(조건) 문1 else 문2
실행 과정:
1 프로그램이 if 문을 실행하면 조건식의 결과가 참인지 거짓인지 확인합니다.
2. true이면 if를 입력하고 내부의 문 본문 내용을 실행합니다.
3. false일 경우 if는 입력하지 않고 else를 입력하여 내부의 문 본문을 실행합니다.
예:
package com; public class liu { public static void main(String[] args) { //获取两个数的较大值 int i = 1; int j = 2; int max = 0; if(i > j) { max = i; //把i赋值给max } else { max = j; //把j赋值给max } System.out.println(max); //因为i>j条件为假,所以执行else里面的语句,所以max得到的数值为2。 } }
if(조건식) { 문 본문; }else if{ 문 본문; }…else{문 본문;}
문 표현 형식:
if…else if…
실행 과정:
1. 프로그램이 if 문을 실행하면 조건식의 결과가 참인지 거짓인지 확인합니다.
2. true이면 if의 문 본문 내용이 실행되고 다른 문 본문은 실행되지 않습니다.
3. false인 경우 else if의 조건식 결과가 true인지 false인지 확인하기 위해 계속해서 내려갑니다.
4. true이면 elseif를 입력하고 그 안에 있는 문 본문 내용을 실행합니다.
5. 거짓이면 계속 내려가세요...
6. if와 elseif의 조건식이 모두 거짓이면 else의 문 본문 내용이 실행됩니다.
예:
package com; public class liu { public static void main(String[] args) int a = 0; int i = 7; if(i > 8) { a = 1; } else if(i > 7) { a = 2; } else if(i > 6) { a = 3; } else { a = 4; } System.out.println(a); } }
if 조건문은 여러 옵션을 처리할 때 분명히 약간 서투릅니다. 이때 새로운 방법이 있습니다. 왜 안 될까요? 다음으로 switch 문을 소개하겠습니다.
아래에서 실행 프로세스에 대해 이야기해 보겠습니다.
1. 프로그램이 스위치를 실행하면 일치하는 첫 번째 사례를 찾습니다. 실행에 들어갈 것입니다.
2. 성명 본문 내용과 내부 내용입니다. 성공적인 일치가 없으면 계속해서 내려가서 두 번째 사례를 찾아 일치를 계속합니다...
3. 모든 케이스가 일치하지 않는 경우 기본적으로 문 본문 내용이 실행됩니다.
예:
package com; public class liu { public static void main(String[] args) { int i = 3; switch(i) { case 1: System.out.println("1"); break; case 2: System.out.println("2"); break; case 3: System.out.println("3"); //i=3符合case 3所以就执行case里面的命令,其余语句则不管。 break; default: System.out.println("3"); break; } } }
case 태그:
char, byte, short 또는 int 유형의 상수 표현.
열거 상수.
Java 7부터 케이스 태그는 문자열 리터럴이 될 수 있습니다.
문자 상수 예:
String input.... switch (input.tolowerCase()) { case "yes": ... break; ... }
경고: Case 분기 문 끝에 break 문이 없으면 다음 Case 분기 문이 실행됩니다.
이 내용을 잊어버리는 경향이 있는 경우 이 문을 앞에 추가하면 됩니다. 이렇게 하면 대소문자 뒤에 공백이 없으면 컴파일 중에 오류가 발생합니다.
javac -Xlint:fallthrough Test.java
스위치 종료 플래그:
1.break
2.encounter the end}
위 내용은 Java 블록 범위, 조건문 및 스위치 문을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!