다른 프로그래밍 언어와 마찬가지로 Java는 조건문과 루프 구조를 사용하여 제어 흐름을 결정합니다. 이 문서에서는 조건, 루프 및 스위치에 대해 간략하게 설명합니다.
1. 블록 범위
블록(블록), 즉 복합문입니다. 이는 한 쌍의 중괄호로 묶인 몇 가지 간단한 Java 문을 나타냅니다. 블록은 변수의 범위를 결정합니다.
예:
1 public class Code { 2 static 3 { 4 System.out.println("1"); 5 } 6 { 7 System.out.println("2"); 8 } 9 public Code()10 {11 System.err.println("3");12 }13 public static void main(String[]args)14 {15 new Code();16 }17 }
참고: 이름이 같은 변수는 중첩된 두 블록에서 선언할 수 없습니다.
2. 조건문
형식 1:
if(condition)
{
statement1
statement2
....
}
예:
1 if(youSales>=target)2 {3 performance="Satisfactory";4 bonus=1000;5 }
형식 2:
if (조건) 문1 다른 문2
예:
1 if(youSales>=target) 2 { 3 performance=“Satisfactory”; 4 bonus=100+10*(youSales-target“); 5 } 6 else 7 { 8 performance=”Unstatisfactory“; 9 bonus=0;10 }
3. 루프
조건이 true이면 while 루프가 실행됩니다.
형식 1:
while(condition) statemnet
예:
1 while (balance<goal)2 {3 balance+=payment;4 double interest=balance*interestRate/100;5 balance+=interest;6 years++;7 }
형식 2:
do 문 while(condition) 업데이트를 사용하여 반복을 지원하는 일반 구조; 각 반복 후에 반복 횟수를 제어합니다.
for (int i=0; i
4개의 예:
1 do 2 { 3 balance+=payment; 4 double interest=balance*interestRate/100; 5 balance+=interest; 6 7 year++; 8 9 System.out.printf("After year %d,your balance is %,.2f%,year,balance");10 11 System.out.print("Ready to retire?(Y/N)");12 input=in.next();13 }14 while(input.equals("N"));15 16 }
1 public class ShuZu1 { 2 public static void main(String[]args){ 3 int [][] x={{1,2,2,2,2},{3,3,3,3,3},{4,5,-1,17,55}}; 4 int result=qiuHe(x); 5 System.out.println("和是"+result); 6 } 7 public static int qiuHe(int[][]x){ 8 int s=0; 9 for(int i=0;i<x.length;i++)10 {11 for(int j=0;j<x[i].length;j++)12 {13 s+=x[i][j];14 }15 }16 return s;17 }18 }
1 public class ShuZu2 { 2 public static void main(String[]args){ 3 int [][] x=new int[7][7]; 4 //生成随机数组,注意没有返回值,另外打印一行字 5 suiJi(x); 6 System.out.println("生成的数组是:"); 7 8 //显示数组内容,注意没有返回值 9 showArray(x);10 11 //取值12 float result=getAvg(x);13 System.out.println("平均数是"+result);14 15 }16 static float getAvg(int [][] x){17 float s=0;18 for(int i=0;i<x.length;i++){19 for(int j=0;j<x[i].length;j++){20 s+=x[i][j];21 }22 }23 return s/(x.length*x[0].length);24 }25 static void suiJi (int[][]x){ //这里我出错了。返回值写了int型,不应该的。思考一下。26 for(int i=0;i<x.length;i++){27 for(int j=0;j<x[i].length;j++){28 x[i][j]=(int)(Math.random()*10);29 }30 }31 }32 static void showArray(int[][]x){ //这里我出错了。返回值写了int型,不应该的。思考一下。33 for(int i=0;i<x.length;i++){34 for(int j=0;j<x[i].length;j++){35 System.out.print(x[i][j]+"\t");// 给数据空格36 }37 System.out.println();//打印换行38 }39 }40 }
1 import java.util.Arrays; 2 public class SuZu3{ 3 public static void main(String[] args) { 4 int [] x={2,-1,7,777,6,764,85896,65554,0,874785,417825,74}; 5 sort(x,'n'); 6 for(int i=0;i<x.length;i++){ 7 System.out.print(x[i]+"\t"); 8 } 9 }10 //给数组进行选择性排序11 //调用API进行升序12 static void sort(int[]x,char Flag){13 if('A'==Flag){14 Arrays.sort(x);15 }16 else {17 for(int i=0;i<x.length-1;i++){18 for(int j=0;j<x.length-1-i;j++){19 int temp=0;20 if(x[j]<x[j+1]){21 temp=x[j];22 x[j]=x[j+1];23 x[j+1]=temp;24 }25 }26 }27 }28 }29 }
case 1:
.....
break;
사례 2: ......break; ......//몇 가지 사례를 더 가질 수 있습니다(break로 종료). default: ... ..break;}참고:
case 레이블은 다음과 같습니다.
* char, byte, short 또는 int 유형의 상수 표현식입니다.* 열거형 상수
* Java SE 7부터 케이스 레이블은 문자열 리터럴일 수도 있습니다.위 내용은 Java의 조건문 및 루프 구조 사용에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!