Heim >Java >javaLernprogramm >Detaillierte Einführung in die Verwendung von bedingten Anweisungen und Schleifenstrukturen in Java
Wie jede Programmiersprache verwendet Java bedingte Anweisungen und Schleifenstrukturen, um den Kontrollfluss zu bestimmen. In diesem Artikel werden Bedingungen, Schleifen und Schalter kurz erläutert.
1. Blockumfang
Block (Block), also zusammengesetzte Anweisung. Es bezieht sich auf mehrere einfache Java-Anweisungen, die in geschweifte Klammern eingeschlossen sind. Blöcke bestimmen den Umfang von Variablen.
Zum Beispiel:
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 }
Hinweis: Variablen mit demselben Namen können nicht in zwei verschachtelten Blöcken deklariert werden.
2. Bedingungsanweisung
Format 1:
if(condition)
{
Anweisung1
Anweisung2
.....
}
Zum Beispiel:
1 if(youSales>=target)2 {3 performance="Satisfactory";4 bonus=1000;5 }
Format 2 :
wenn (Bedingung) Anweisung1 sonst Anweisung2
Zum Beispiel:
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. Schleife
Wenn die Bedingung wahr ist, wird die while-Schleife ausgeführt.
Format 1:
while(condition)statemnet
Zum Beispiel:
1 while (balance<goal)2 {3 balance+=payment;4 double interest=balance*interestRate/100;5 balance+=interest;6 years++;7 }
Format 2:
do-Anweisung while(condition);
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 }
4. Bestimmen Sie die Schleife
Die for-Schleifenanweisung ist eine allgemeine Methode die Iterationen unterstützt. Struktur, die einen Zähler oder eine ähnliche Variable verwendet, die nach jeder Iteration aktualisiert wird, um die Anzahl der Iterationen zu steuern.
Das Format ähnelt dem folgenden:
for (int i=0; i System.out.println(i); 4 Beispiele: 5. Mehrfachauswahl: Das Format der switch-Anweisung ähnelt dem folgenden: switch (choice) { Fall 1: ... ..... Pause Fall 2: ..... Pause . ....... //Sie können noch ein paar Fälle haben (beenden Sie sie mit Pause) Standard: ..... break; * Ein konstanter Ausdruck vom Typ char, byte, short oder int. * Enum-Konstanten * Ab Java SE 7 können Case-Tags auch String-Literale sein. Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Verwendung von bedingten Anweisungen und Schleifenstrukturen in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website! 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 }
1 import java.util.Scanner; 2 3 public class Suzu4 { 4 public static void main(String[] args) { 5 System.out.println("请输入");//这个命令只能紧贴在Scanner scan = new Scanner(System.in);的上面或下面才有效。 6 Scanner scan = new Scanner(System.in); 7 //System.out.println("请输入");或者放在Scanner scan = new Scanner(System.in);的下面 8 String str = scan.nextLine();// nextLine才是接收一行 9 10 char[] s = str.toCharArray();// 把字符串转换称一个字符数组11 scan.close();12 int letterCount = 0;13 int numberCount = 0;14 int spaceCount = 0;15 int otherCount = 0;16 for (int i = 0; i < s.length; i++) {17 if (s[i] >= 'a' && s[i] <= 'z' || s[i] >= 'A' && s[i] <= 'Z') {18 letterCount++;19 } else if (s[i] >= '1' && s[i] <= '9') {20 numberCount++;21 } else if (s[i] == ' ') {22 spaceCount++;23 } else {24 otherCount++;25 }26 }27 System.out.println("字母有" + letterCount + "个");28 System.out.println("数字有" + numberCount + "个");29 System.out.println("空格有" + spaceCount + "个");30 System.out.println("其他有" + otherCount + "个");31 }32 }//ctrl+shift+f 是代码格式化33 //ctrl+shift+o 是导包