循环与条件
前言
Java基础语法里面包括循环结构(while 、do…while 、 for)和条件语句(if…else 、switch…case)
一、循环结构
1.while循环
while循环的结构为:
while(布尔表达式){ //表达式为true(真)就执行, 为false(假)则不执行
//循环语句
}
while(true){ //死循环,则需要break语句才能跳出循环
}
实例:
int i=5;
while( i<8 ){ //打印三遍I love you!
System.out.println("I love you!");
i++;
}
while( true ){ //打印I love you!
System.out.println("I love you!");
break;
}
2.do…while
相比于while语句,do…while语句实现进入循环在进行判断,所以至少会循环一次(布尔表示再循环体后面)
结构为
do{
//循环语句
}while(布尔表达式)
举例:
int i=5;
do{ //打印三遍I love you!
System.out.println("I love you!");
i++;
}while(i<8);
//如果布尔值是死循环,则和while语句一样需要break跳出
3.for循环
3.1 简单for循环
for循环结构:
for(初始化; 布尔表达式; 自增或自减) {
//代码语句
}
for(int i=0;i<3;i++){
System.out.println("I love you");
}
布尔表达式的值,如果为 true,循环体被执行;如果为false,循环终止。
3.1 foreach(增强for循环)
foreach适用于循环次数未知,或者计算循环次数比较麻烦情况下使用效率更高,但是更为复杂的一些循环还是需要用到for循环效率更高。
结构为:
for(元素类型 元素名称 : 遍历数组(集合)(或者能进行迭代的))
{
//代码句子
}
foreach循环是通过迭代器iterator来实现的,foreach是每次访问该元素的下一个元素的地址,来实现的直接元素访问。
foreach一般用来遍历集合,for循环一般用来遍历数组
ArrayList<Integer> num =new ArrayList<>();
num.add(74823);
num.add(3434);
num.add(42342);
for (Integer integer : num) {
System.out.println(integer);
二、条件语句
1.if…else
结构为:
//基础语句
if(布尔表达式){
//布尔表达式为true则运行该代码块
}else{
//布尔表达式为false则运行该代码块
}
//if嵌套
if(布尔表达式 1){
//如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
//如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
//如果布尔表达式 3的值为true执行代码
}else {
//如果以上布尔表达式都不为true执行代码
}
例子
int i=3;
if (i>4){
System.out.println("hello");
}else {
System.out.println("I love you!!!");
}
int i=3;
if (i>4){
System.out.println("hello");
}else if (i>3){
System.out.println("I love you!!!");
}else {
System.out.println("你好!");
}
2.switch…case
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
语法结构为:
switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
switch(command){
case value :
//语句
break; //可选
case value :
//语句
break; //可选
//你可以有任意数量的case语句
default : //可选
//语句
}
利用该语法实现的选择:
System.out.println("请输入你要操作的命令:");
String Command = SYS_SC.nextLine();
switch (Command){
case "1":
showBusinessInfos();
break;
case "2":
addMovie();
break;
case "3":
deleteMovie();
break;
case "4":
updateMovie();
break;
case "5":
System.out.println(loginUser.getUserName()+"请您下次再来~~~");
return;
default:
System.out.println("你输入的操作有误!");
}