CGBTN2110-DAY05总结复习

Posted 程序媛 泡泡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CGBTN2110-DAY05总结复习相关的知识,希望对你有一定的参考价值。

DAY05 复习

数组

1.1 静态创建

int[] a = {1,2,3,4,5};
int[] a = new int[]{1,2,3,4,5};

1.2 动态创建

int[] a = new int[5];

1. 3 数组的创建过程

  1. 在内存中开辟连续的空间,用来存放数据
  2. 给数组完成初始化过程,给每个元素赋予默认值
  3. 数组完成初始化会分配一个唯一的地址值
  4. 把唯一的地址值交给引用类型的变量a去保存
  5. 如果想要操作数组中的元素,可以根据变量保存的地址找到数组,然后根据下标来操作数组的具体元素
    数组名保存的是数组的地址值,不是数组中每一个具体的元素,数组名是一个引用类型的变量

2. 数组的特性

  1. 数组的长度通过**数组名.length;**来获取
  2. 数组一旦创建,长度无法改变
  3. 数组的下标从0开始,最大下标为数组长度-1
  4. 如果访问到了不存在的下标,会数组下标越界异常

3. 数组的工具类Arrays

  1. toString(数组名),除了char类型以外,其他类型的数组想要查看数组的具体元素,都得使用这个方法,如果不用,打印是数组的地址值
  2. sort(数组名),给数组进行排序
  3. copyOf(要复制的数组,新数组的长度)
    如果新的长度大于原数组的长度–数组的扩容
    如果新的长度小于原数组的长度–数组的缩容
    如果新的长度等于原数组的长度–普通的复制
    注意:不管是什么长度,都不是修改原数组,而是创建新数组

4. 数组的遍历

  1. 如果只是想查看数组中有哪些元素,直接使用System.out.println(Arrays.toString(方法名));就可以
  2. 如果想要拿到数组中的一个个的具体元素,或者是对数组中的元素做进一步的操作,就需要对数组进行遍历
  3. 遍历:把数组中的所有元素,从头到尾逐个“过一遍”
  4. 通过循环遍历数组,所以循环中的循环变量代表的是数组的下标
public class ReviewDemo {
	public static void main(String[] args) {
		int[] a = new int[10];
		for(int i = 0;i<a.length;i++) {
			//System.out.println(i);//打印的是数组的下标0-9
			a[i] = i+11;//a[i]代表的是数组中每一个具体的元素
		}
		System.out.println(Arrays.toString(a));
		//[11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
	}
}

5. 冒泡排序

冒泡排序详细笔记

排序思路:要比较多轮,每轮两个相邻的元素做比较,位置不对就互换
代码思路:
通过嵌套for循环来完成

  1. 外层循环:控制的是轮数,如果有n个数,最多n-1轮
  2. 内层循环:控制的是每轮中比较的次数,每一轮的次数会递减,之前轮确定的最大值不应该参与后面轮的比较
    注意:外层循环的循环变量代表的是轮数1 2 3 4…
    内层循环的循环变量代表的是数组的下标[0,a.length-i)

6 拓展案例:简易计算器

package cn.tedu.hello;

import java.util.Scanner;

/**本类用于实现简易计算器*/
public class TestMethod {
    public static void main(String[] args) {
        f0();//调用一个实现计算器的方法
    }
    private static void f0() {
        while(true){//死循环,让用户一直算
            //1.提示并接收用户输入的两个数
            System.out.println("请您输入要计算的第1个数:");
            int a = new Scanner(System.in).nextInt();
            System.out.println("请您输入要计算的第2个数:");
            int b = new Scanner(System.in).nextInt();

            //2.提示并接收用户输入的运算符
            System.out.println("请您输入要计算的运算符,支持:+ - * / :");
            String s = new Scanner(System.in).nextLine();

            //3.根据运算符的不同,调用不同的方法计算
            switch (s){
                case "+" : f1(a,b);break;
                case "-" : f2(a,b);break;
                case "*" : f3(a,b);break;
                case "/" : f4(a,b);break;
                default: System.out.println("输入的运算符不正确!");
            }
            //4.询问用户是否想继续运算
            System.out.println("如果想退出,请输入1,继续请输入2");
            int flag = new Scanner(System.in).nextInt();
            if(flag == 1){ break;}//如果if后只有句话,大括号可以省略
        }
    }

    private static void f1(int a, int b) {//将拿到的两个数进行加法运算并打印结果
        System.out.println(a+"和"+b+"做加法运算的结果为:"+(a+b));
    }
    private static void f2(int a, int b) {//将拿到的两个数进行减法运算并打印结果
        System.out.println(a+"和"+b+"做减法运算的结果为:"+(a-b));
    }
    private static void f3(int a, int b) {//将拿到的两个数进行减法运算并打印结果
        System.out.println(a+"和"+b+"做乘法运算的结果为:"+(a*b));
    }
    private static void f4(int a, int b) {//将拿到的两个数进行减法运算并打印结果
        System.out.println(a+"和"+b+"做除法运算的结果为:"+(a/b));
    }
}

作业:安装IDEA工具,并完成HelloWorld案例
设置关键字颜色 注释颜色 字体大小

IDEA编写的第一个小程序

以上是关于CGBTN2110-DAY05总结复习的主要内容,如果未能解决你的问题,请参考以下文章

CGBTN2110-DAY01总结复习

CGBTN2110-DAY18总结复习

CGBTN2110-DAY18总结复习

CGBTN2110-DAY15总结复习

CGBTN2110-DAY15总结复习

CGBTN2110-DAY04总结复习