172.16.0.151_20200826-陈政平

问题

while( true ) {
          int op = rand.nextInt( 10 ); // 随机产生 [ 0 , 10 ) 之间的数字
          switch( op ) {
            case 0 :
              // 需要判断能量是否足以完成 陆地驾驶 操作,若不足就跳出循环 (如何从switch直接跳出while循环?)
              // 执行 陆地驾驶 操作 ( Machine 不具备陆地驾驶能力,需要转换为 Roadable 才可以调用 run 方法 )
                
                    if( m instanceof Roadable && m.getEnergy() > 10 ) {
                        Roadable R = (Roadable)m;
                        R.run();
                        System.out.println("足以完成 陆地驾驶");
                    }else {
                        return;
                    }
                
              break;
            case 1 :
              // 需要判断能量是否足以完成 水中航行 操作,若不足就跳出循环
              // 执行 水中航行 操作 ( Machine 不具备水中航行能力,需要转换为 Voyageable 才可以调用 voyage 方法 )
                if( m instanceof Voyageable && m.getEnergy() > 15 ) {
                    Voyageable v = (Voyageable)m;
                    v.voyage();
                    System.out.println("足以完成 水中航行");
                }else {
                    return;
                }
              break;
            case 2 :
              // 需要判断能量是否足以完成 空中飞行 操作,若不足就跳出循环
              // 执行 空中飞行 操作 ( Machine 不具备空中飞行能力,需要转换为 Flyable 才可以调用 fly 方法 )
                if( m instanceof Flyable && m.getEnergy() > 25 ) {
                    Flyable F = (Flyable)m;
                    F.fly();
                    System.out.println("足以完成 空中飞行");
                }else {
                    return;
                }
              break;
            default :
              // 不支持的操作
          }
          System.out.println(m.getEnergy());
        }

被绕进去了。。。

吐槽:

晚上教室里有点热

标签

© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1