分支结构
条件判断
if (x>=y){
max = x;
}else{
max=y;
}
选择语句
/*
switch(表达式){
case 常量值1;
语句块1;
[break];有时候要有时候不要
case 常量值2;
语句块2;
[break];
default:
不在case的其他情况输出什么
}
*//*
执行特点;
1.入口
1.1当表达式的值和常量值相等,就会从这个case进入
1.2当所有都不相等,会找default(不一定放在最后,这时一定要加break)
2.出口
2.1自然出口:switch结束
2.2中断出口:break(或return)
一旦找到入口就会顺序往下执行,直到遇到出口
*//*
要求:
1.case后必须是常量
2.case后常量值不能重复
3.switch()中的表达式类型要求:
允许4种基本数据类型:byte short int char
允许2种引用数据类型:枚举(JDK1.5之后)String(JDK1.7之后)
*/
public class StructionSwitch {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int month = sc.nextInt();
switch (month) {
case 3:
case 4:
case 5:
System.out.println("春天");
break;//如果没有break的话,程序会继续往下走
case 6:
case 7:
case 8:
System.out.println("夏天");
break;
case 9:
case 10:
case 11:
System.out.println("秋天");
break;
case 12:
case 1:
case 2:
System.out.println("冬天");
break;
default:
System.out.println("输入有误");
break;
}
}
}
循环结构
/*
(一)for循环
1、语法结构
形式一:
for(;;){
需要重复执行的语句(换句话说,不需要重复执行的语句,就不要放到{}中
}
形式二:
for(循环变量初始化表达式①; 循环条件表达式②; 循环变量迭代表达式③){
循环体语句④:需要重复执行的语句
}
*/
/*
(二)while循环
语法格式:
while(循环条件){
循环体语句块
}
*/
/*
(三)
do...while
语法结构:
do{
循环体语句块:需要重复的代码
}while(循环条件);
*/
/*
for循环
for (int i = 0; i < arr.length; i++) {
}
while循环
while (condition) {
}
do…while循环
public class Do_While {
public static void main(String[] args) {
int i = 0 ;
do {
System.out.println(i);
i = i+1;
} while (i<100);
}
}
循环中的关键字
break
(四)
关键字break:中断当前循环
*/
public class _Break{
public static void main(String[] args){
//从键盘输入整数,输入0结束,统计输入的正数、负数的个数。
//因为需要从键盘输入
Scanner input = new Scanner(System.in);
int positive = 0;
int negative = 0;
while(true){//true,表示条件成立,while(true)条件永远成立
System.out.print("请输入整数:");
int num = input.nextInt();
if(num>0){
positive++;
}else if(num<0){
negative++;
}else{//num=0
//结束当前循环
break;
}
}
System.out.println("正数的个数:" + positive);
System.out.println("负数的个数:" + negative);
}
}
continue
关键字continue:只能用于循环结构,提前结束本次循环,继续下一次循环--作为了解
*/
public class Continue{
public static void main(String[] args){
//2、打印1-100的偶数
for(int i=1; i<=100; i++){
/*
遇到奇数,提前结束当次循环,跳过了continue后面的循环体语句,直接去执行i++,为下一次循环做准备
*/
if(i%2!=0){
continue;
}
System.out.println(i);
}
}
}