1、分支结构
1、简单的if条件语句
2、if…else语句
3、if…else多分支语句
语法为
if(条件表达式1) {
语句序列1
} else if(条件表达式2) {
语句序列2
}
…
else if(表达式n) {
语句序列n
}
4、switch多分支语句
public class Switch {
public static void main(String[] args) {
String today = "星期五";
switch(today) {
case"星期一":
System.out.println("Today is Monday!");
break;
case"星期二":
System.out.println("Today is Tuesday!");
break;
case"星期三":
System.out.println("Today is Wednesday!");
break;
case"星期四":
System.out.println("Today is Thursday!");
break;
case"星期五":
System.out.println("Today is Friday!");
break;
case"星期六":
System.out.println("Today is Saturday!");
break;
case"星期日":
System.out.println("Today is Sunday!");
break;
default:
System.out.println("请输入合法的字符串!");
}
}
}
运行结果
switch语句中表达式的值必须是整型、字符型和字符串类型之一,常量值1~n也是整型、字符型和字符串类型之一
2、循环语句
1、while循环语句 先判断后执行
2、do…while循环语句 先执行后判断,至少执行一次
3、for循环语句
①for语句
②freach语句
语法为
for(元素变量x : 遍历对象obj) {
引用了x的java语句;
}
public class ForEach {
public static void main(String[] args) {
int[] array = {1,2,3,4,5};
System.out.println("数组array中包含的元素:");
for(int i : array) {
System.out.println(i+" ");
}
}
}
运行结果
3、跳转语句
1、break语句
强行退出循环
public class Break {
public static void main(String[] args) {
int a;
int m=1000;
int sum=0;
for(a=1;a<=100;a++) {
sum+=a;
if(sum>m) {
break;
}
}
System.out.println("1+2+...+"+a+"="+sum);
}
}
运行结果
2、continue语句
用于让程序直接跳过其后面的语句,进行下一次循环。
public class Continue {
public static void main(String[] args) {
int sum=0;
for(int i=0;i<=100;i++) {
if(i%2==0) {
continue;
}
sum+=i;
}
System.out.println("1+2+3+...99="+sum);
}
}
运行结果
3、return语句
从一个方法返回,并将控制权交给调用它的语句。
4、补例
(1)、判断今年是否为闰年
package com.pcx;
public class LeapYear {
public static void main(String[] args) {
int year=2008;
boolean isYear = false;
if(year%400==0) {
isYear=true;
} else if(year%4==0&&year%100!=0) {
isYear=true;
} else {
isYear=false;
}
if(isYear) {
System.out.println("今年是闰年!");
} else {
System.out.println("今年不是闰年!");
}
}
}
(2)、 使用for循环输出空心菱形
public class Diamond输出空心菱形 {
public static void main(String[] args) {
int a=6; //定义菱形的大小
if(a%2==0) {
a++;
}
for(int i=0;i<a/2+1;i++) {
for(int j=a/2+1;j>i+1;j--) {
System.out.print(" "); //输出左上角位置的空白
}
for(int j=0;j<2*i+1;j++) {
if(j==0||j==2*i) {
System.out.print("*"); //输出菱形上半部边缘
} else {
System.out.print(" "); //输出菱形上半部空心
}
}
System.out.println(""); //输出空格
}
for(int i=a/2+1;i<a;i++) {
for(int j=0;j<i-a/2;j++) {
System.out.print(" "); //输出菱形左下角空白
}
for(int j=0;j<2*a-1-2*i;j++) {
if(j==0||j==2*(a-i-1)) {
System.out.print("*"); //输出菱形下半部边缘
} else {
System.out.print(" "); //输出菱形下半部空心
}
}
System.out.println(""); //输出空格
}
}
}
运行结果