學習内容:流程控制。
重點内容:一.switch多分支語句。
1.switch語句中的表達式的值必須為整型、字元型或字元串型。常量值1~n也必須為整型、字元型或字元串型。
2.若case語句中沒有break,将執行後面case中的若幹個語句,直到遇見break為止。
3.若沒有一個常量與case後的值相同,将執行default後的語句,若default也不存在,switch語句不作任何處理。
二、while循環
1.易錯點:在while表達式的括号後加“;”,如while(a==5); 這樣程式會進入無限循環。
三、do...while語句
1.do...while語句與while語句的差別:do...while語句至少執行一次,while語句可以一次都不執行。且do...while語句的while表達式後要加“;”,即
do{
執行語句
}while(表達式);
四、for循環
1.實作無限循環的for語句:
for(;;){
...
}
2.forreach 語句(for語句的特殊簡化,forreach不是關鍵字)
例:
public class Repetition {
public static void main(String[] args) {
// TODO 自動生成的方法存根
int a[]= {1,2,3};//定義一維數組
System.out.println("數組a中的元素為:");
for(int x:a) { //forreach語句
System.out.println(x);
}
}
} 五、break語句
1.使用“标簽”功能可以跳出外層循環。
文法:
标簽名:循環體{
break 标簽名;
}
例:
public class break語句的使用 { //不使用标簽功能
public static void main(String[] args) {
// TODO 自動生成的方法存根
int i,j;
for(i=0;i<=3;i++) {
for(j=0;j<=6;j++) {
System.out.println("i="+i+"j="+j);
if(j==5) {
break;
}
}
}
}}
public class break跳出外層循環 { //使用标簽功能
public static void main(String[] args) {
// TODO 自動生成的方法存根
int i,j;
Loop:for(i=0;i<=3;i++) {
for(j=0;j<=6;j++) {
System.out.println("i="+i+"j="+j);
if(j==5) {
break Loop;
}
}
}
}}
運作結果分别如下:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiQDOxEzX3xCZlhXam9VbsUmepNXZy9CXwJWZ3xCdh1mcvZ2Lc1zaHRGcWdUYuVzVa9GczoVdG1mWfVGc5RHLwIzX39GZhh2csATMflHLwEzX4xSZz91ZsAzMfRHLGZkRGZkRfJ3bs92YskmNhVTYykVNQJVMRhXVEF1X0hXZ0xiNx8VZ6l2cssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLyQDM4AzNwYjY3QzYmZWMzYzXzAzM0ETMzEzLclDMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
六、完成的小程式:
1.階乘求和:
public class 階乘求和 {
public static void main(String[] args) {
// TODO 自動生成的方法存根
int i=1;
double j=1,s=0;
while(i<=20) {
j=j*i;
s=s+1.0/j;
i++;
}
System.out.println(s);
}}
2.利用for循環列印菱形:
import java.util.Scanner;
public class 菱形 {
static Scanner reader=new Scanner(System.in);
public static void main(String[] args) {
int i,j,z,n;
n=(int)reader.nextDouble();
for(i=1;i<=n;i++) {//for循環控制行數
for(z=1;z<=n-i;z++) {//for循環控制空格
System.out.print(" "); //列印空格
}
for(j=1;j<=(2*i-1);j++) {//for循環控制*數量
System.out.print("*"); //列印*數量
}
System.out.println();//控制換行
}
//下三角形,倒三角形要注意第一行的空格為0
for(i=1;i<n;i++) {
for(z=0;z<i;z++) {
System.out.print(" "); //列印空格
}
for(j=1;j<=(2*(n-i)-1);j++) {
System.out.print("*"); //列印*數量
}
System.out.println(""); //控制換行
}
}
}
遇到的問題:無
明天任務:字元串