Day3条件语句(if,switch)

if条件语句

语句结构:

if(条件){        //判断条件是否成否成立,若成立则执行下面代码

        //代码块

}

注释:if语句使用逻辑运算(&&,||)符多个条件链接起来的写法

if-else条件(多重if条件)语句

语句结构:

if(条件1){        //若满足条件1,则执行代码块1
        //代码块1

  }else if(条件2){        //若不满足条件1,跳到else if判断条件2是否成立,若成立执行条件2

        //代码块2

}else{        //若条件1、2都不成立,则执行代码块3

        //代码块3

}

注释:

1、else if{}部分可以有多个

2、else{}的部分要是没有,可以省略

嵌套if条件语句

语句结构:

if(外部条件){      //若外部条件成立,则继续执行下面代码

        if(内部条件){

                代码块1     //对应内部条件成立是执行该代码

        }else{

                代码块2     //对应为若内部条件不成立时执行该代码

        }

else{        //若外部条件不成立,则调跳到else执行该行代码

        代码块3

        }

}

switch条件语句

语句结构:

switch(表达式){

        case 常量1:

                代码1;

                break;

        case 常量2:

                代码2;

                break;

...

        default:

                代码2;

}

问题:如何在switch循环体中跳出,执行下一条语句?

当break出现在循环体中的switch语句体内时,起作用只是跳出该switch语句体,并不能终止循环体的执行。若想强行终止循环体的执行,可以在循环体中,但并不在switch语句中设置break语句,满足某种条件则跳出本层循环体。

代码:

switch (input) {
                case 1:
                    System.out.println("请输入图书id");
                    a.setId(sc.nextInt());
                    System.out.println("请输入图书书名");
                    a.setBookName(sc.next());
                    System.out.println("请输入作者");
                    a.setAuthor(sc.next());
                    System.out.println("请输入图书价格");
                    a.setPrice(sc.nextInt());
                    Iterator h = book.iterator();
                    int flag = 0;
                    while (h.hasNext()) {
                        if (a.equals(h.next())) {
                            flag = 1;
                            System.out.println("图书馆中已有对应的图书,不用再新增该本图书");
                            break;
                        }
                    }
                    if (flag == 0) {
                        book.add(a);
                        System.out.println("图书信息已添加至图书馆系统中");
                    }
                    break;
                case 2:
                    for (Object o : book) {
                        Book b = (Book) o;
                        System.out.println(b);
                    }
                    break;
                case 3:
                    System.out.println("谢谢光临,欢迎下次再来");
                    break;
                default:
                    break;
            }
            break;
        } while (input <= 3 && input >= 1);

就是在default的}外面再加一个break,就可以跳出while/for循环了

备注:switch只能处理等值条件判断的情况,多重if适用处理分段的连续区间的情况,嵌套if处理条件复杂的分支情况

字符串的比较语句:

a.equals(" "),例如:sex.equals(“男”)

产生随机数0~9的方法:

int random=(int)(Math.random()*10)

Guess you like

Origin blog.csdn.net/yuanlaishidahuaa/article/details/120919293