Java随堂小记03

Java随堂小记

  • 流程控制
    • switch
    • while
    • while和do while
    • for循环
    • 小案例(自己写)
    • 增强for循环
    • break、continue、goto
      • break:可用于任何循环语句中强行退出最近的循环,只是跳出循环,并不代表程序结束
      • continue:用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判断
      • goto
  • 练习:打印三角形
  • 反编译

流程控制

equals:判断字符串相等,不能用==

switch

JDK7的新特性,switch支持字符串类型了
记得break!!
使用Scanner记得close!!

package www.Dongyi.Scanner;

import java.util.Scanner;

public class Demo1 {
     
    public static void main(String[] args) {
     
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入姓名: ");
        String name =scanner.nextLine();
        switch(name){
     
            case "阿董":
                System.out.println("仙女");
                break;
            case "富婆":
                System.out.println("阿董");
                break;
            default:
                System.out.println("反正不是我");
                break;
        }
        scanner.close();
    }
}

while

在这里插入图片描述

少部分情况需要循环一直执行,如服务器请求响应监听
大多数情况要让循环停止,需要结束条件

while和do while

while是先判断后执行
do…while至少执行一次,然后判断是否要执行

for循环

for循环语句时支持迭代的一种通用结构,是最有效、最灵活的循环结构

一个快键键:
输入100.for 回车 自动补全for(int i = 0;i < 100;i++)

小案例(自己写)

计算0到100之间的奇数和偶数的和
输出1-1000之间能被5整除的数,并且每行输出3个换一行

        for (int i = 0; i < 1000; i++) {
     
            if(i%5 == 0){
     
                System.out.print(i+"\t");
            }
            if(i%(5*3)==0){
     //实现三个数一换行
                System.out.println();
            }
  

打印九九乘法表
思路:
.先打印第一列,再打印行,去掉重复项,进行换行

public class Demo1 {
     
    public static void main(String[] args) {
     
        for (int i = 1; i < 10; i++) {
     
            for (int j = 1; j <= i; j++) {
     
                System.out.print(j+"*"+i+"="+(j*i)+"\t");
            }
        System.out.println();
        }
    }
}

Java随堂小记03_第1张图片

增强for循环

主要用于数组或集合

public class Demo1 {
     
    public static void main(String[] args) {
     
        int [] numbers={
     10,20,30,40,50};
        for (int x : numbers) {
     
            System.out.println(x);
        }
    }
}

在这里插入图片描述
快捷:numbers.for

break、continue、goto

break:可用于任何循环语句中强行退出最近的循环,只是跳出循环,并不代表程序结束

public class Demo1 {
     
    public static void main(String[] args) {
     
        int i = 0;
        while(i<100){
     
            i++;
            System.out.println(i);
            if(i==30){
     
                break;//跳出最近的循环语句,即while
            }
        }
        System.out.println("main方法任然执行");
    }
}

在这里插入图片描述

continue:用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判断

public class Demo1 {
     
    public static void main(String[] args) {
     
        int i =0;
        while(i<100){
     
            i++;
            if(i%10==0){
     //当i为10的倍数时
                System.out.println();
                continue;//不执行下面的输出操作而是进行下一次循环
            }
            System.out.print(i+"\t");
        }
    }
}

Java随堂小记03_第2张图片

goto

java中没有goto,但是可以通过带标签的continue和break实现
标签:label

public class Demo1 {
     
    public static void main(String[] args) {
     
        //打印101-150之间所有的质数
        int count = 0;
        outer:for (int i = 101; i < 150; i++) {
     
            for (int j = 2;j < i/2;j++){
     //i/2是因为提高效率,也可以是i
                if(i % j == 0){
     
                    continue outer;
                }
            }
            System.out.println(i+" ");
        }
    }
}

练习:打印三角形

分三步打印
Java随堂小记03_第3张图片

public class Demo1 {
     
    public static void main(String[] args) {
     
        for (int i = 1; i < 6; i++) {
     
            for (int j=5;j>i;j--){
     
                System.out.print(" ");
            }
            for(int j=1;j<=i;j++){
     
                System.out.print("*");
            }
            for(int j=2;j<=i;j++){
     
                System.out.print("*");
            }
            System.out.println();
        }

    }
}

Java随堂小记03_第4张图片

反编译

点击项目结构->复制路径
Java随堂小记03_第5张图片

打开路径下的文件找到当前项目的.class
Java随堂小记03_第6张图片

右击打开文件夹->找到项目的.java
Java随堂小记03_第7张图片
Java随堂小记03_第8张图片

将.class复制到.java文件夹下
回到IDEA,多了个01图标的文件,双击
Java随堂小记03_第9张图片

每一个对象都有一个由特定算法得出的hashCode
Java随堂小记03_第10张图片

你可能感兴趣的:(Java,java)