java中你容易忘记的基础大盘点_流程控制

Java流程控制包括顺序控制、条件控制和循环控制

顺序控制,就是从头到尾依次执行每条语句操作。

条件控制,基于条件选择执行语句,比方说,如果条件成立,则执行操作A,或者如果条件成立,则执行操作A,反之则执行操作B。if else和switch case

循环控制,又称为回路控制,根据循环初始条件和终结要求,执行循环体内的操作。while和 do...while和 for 和 foreach

条件控制

public class TestIf {
    public static void main(String[] args) {
        int age = 19;
        if(age>18){
            System.out.println("你已经成年了");
        }else{
            System.out.println("你还未成年哦");
        }
    }
}
public class TestIf {
    public static void main(String[] args) {
        int age = 19;
        if(age>100){
            System.out.println("哇  长者");
        }else if(age>=18 && age <=100){
            System.out.println("你已经成年了");
        }else if (age>0 && age <18){
            System.out.println("哎呦 你还未成年哦");
        }else{
            System.out.println("哇咔咔  你还没出生呢");
        }
    }
}
import java.util.Scanner;

/**
 * @author 爱丽丝、如歌
 * @description键盘输入三个数字   输出从大到小的排序
 * @create 2018-01-18 下午 8:51
 **/
public class TestIf {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int num1 = scanner.nextInt();
        int num2 = scanner.nextInt();
        int num3 = scanner.nextInt();
        int a = num1>num2&&num1>num3?num1:0;
        int b = num2>num1&&num2>num3?num2:0;
        int c = num3>num1&&num3>num2?num3:0;
        System.out.println(a!=0?a:"");
        System.out.println(b!=0?b:"");
        System.out.println(c!=0?c:"");
        if(a>0){
            System.out.println(num2>num3?num2:num3);
            System.out.println(num2<num3?num2:num3);
        }else if(b>0){
            System.out.println(num1>num3?num1:num3);
            System.out.println(num1<num3?num1:num3);
        }else{
            System.out.println(num1>num2?num1:num2);
            System.out.println(num1<num2?num1:num2);
        }
    }
}

/**
 * @author 爱丽丝、如歌
 * @description switch case 的测试
 * @create 2018-01-18 下午 10:45
 **/
public class TestSwitch {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int i = scanner.nextInt();
        switch (i){
            case 1:System.out.println("星期一");break;
            case 2:System.out.println("星期二");break;
            case 3:System.out.println("星期三");break;
            case 4:System.out.println("星期四");break;
            case 5:System.out.println("星期五");break;
            case 6:System.out.println("星期六");break;
            case 7:System.out.println("星期日");break;
            default:System.out.println("您输入的日期不存在");break;
        }
    }
}

循环控制

/**
 * @author 爱丽丝、如歌
 * @description for循环测试
 * @create 2018-01-18 下午 11:17
 **/
public class TestFor {
    public static void main(String[] args) {
        /**
         * 1 初始化条件   int i=0
         * 2 循环条件     i<100
         * 3 迭代条件     i++
         * 4 循环体       System.out.println(i);
         */
        for (int i = 0; i <100 ; i++) {
            System.out.println(i);
        }
    }
}

public class Test水仙花数 {
    public static void main(String[] args) {
        /**
         * 水仙花数是指:一个三位数,其各位数字立方和等于该数本身。例如:370=33+73+00.这就说明370是一个水仙花数。
         所以要判断一个三位数是不是水仙花数,得先取得这个三位数的的个位,十位和百位。
         */
        for (int i = 100; i <1000 ; i++) {
          int b = i/100;
          int s = i%100/10;
          int g = i%10;
            System.out.print(i==b*b*b+s*s*s+g*g*g?i:" ");
        }
    }
}
public class TestWhile {
    public static void main(String[] args) {
        int a = 0;
        while (a<100){
            System.out.println(a);
            a++;
        }
    }
}
while:先判断条件是否成立,然后执行下面的语句。循环体执行0次或多次
do...while:先执行循环体,然后判断条件是否成立,如果不成立,则跳出。循环体至少执行一次
for(定义循环变量并初始化;循环条件;改变循环变量的值):for循环我觉得是最常用的,因为用起来比较方便,在用的时候定义变量,然后给出循环条件,再改变循环变量的值。

for和while的总结
两者可以进行相互转化
for:知道循环次数
while:只知道循环结束

循环嵌套打印9*9乘法表
public class TestFor {
    public static void main(String[] args) {
      for (int i=1;i<10;i++){
          for (int j = 1; j <10 ; j++) {
              System.out.print(i+"*"+j+"="+i*j+" ");
          }
          System.out.println();
      }
    }
}
break 和 continue 和return
 public static void main(String[] args) {
      for (int i=1;i<10;i++){
          for (int j = 1; j <10 ; j++) {
              System.out.print(i+"*"+j+"="+i*j+" ");
              if(i==3){
                  /**
                   * break用于完全结束一个循环,跳出循环体执行循环后面的语句。
                   */
                  //break;
                  /**
                   * continue是跳过当次循环中剩下的语句,执行下一次循环。
                   */
                  /*System.out.print("===");
                  continue;*/
                  /**
                   * 完全结束
                   */
                  return;
              }
          }
          System.out.println();
      }
    }

  /**
     * 3000米长的绳子 每天减少一半  需要多少天他的长度才能大于5米
     * @param args
     */
    public static void main(String[] args) {
        int i = 6000;
        int a = i/2;
        for (int j = 1; j <i ; j++) {
        System.out.println(a>5?a:"");
            a=a/2;
        }
    }
}
   /**
     * 3000米长的绳子 每天减少一半  需要多少天他的长度才能大于5米
     * @param args
     */
    public static void main(String[] args) {
        int day = 1;
        for (int j = 3000; j>5 ; day++) {
            j=j/2;
        }
        System.out.println(day);
    }
}











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值