java基础day5笔记

    技术2022-07-20  81

    ArrayList list=new int[] arr=new int a=值 集合中可以存各种数据类型,且长度不定,数组反之。 打印数组名,是数组地址,集合重写了,返回的是字符串。 十进制——>二进制:除以2取余数,倒着。反之,按位乘以1,2,4,8,16…相加。

    内存分为5块: 1.方法区 存储.class相关信息。 2.栈 局部变量,方法在栈中运行。 3.堆 new出来的 4.寄存器 与CPU相关。 5.本地方法栈 与操作系统相关。

    首先,在方法区存储了main方法的信息。 栈获取main方法名称,参数,为main方法开辟空间(在空间外调用空间内 变量无效),其中有arr数组变量名(容器) 堆 new出一个数组,栈中变量名指向该数组地址。 栈中为变量[1]赋值,找到变量名->地址->数据位置改变值。

    引用指的就是变量名

    注意:引用类型:栈中变量名实际就存储了一个地址,给变量名赋值也就是赋值一个地址。普通类型的变量,应该就是所有东西都在栈中,只有new了才叫引用类型,引用就是变量名 数组越界 ArrayIndexOutOfBoundsException 空指针 NullPointerException数组是null

    arrB.length数组长度 数组反转,需要一个中间变量,temp 比2个大小,用一个max变量

    注意:若定义一个方法,形参是数组,方法调用的时候,实参是数组的地址值。 若方法返回值要返回多个值,但java不能有多个返回值,那么就将数据放入数组,返回数组, 返回的数组依然只是地址值。

    构造方法不写在栈,是直接在堆中new,new这个对象(数组不是自然只有成变,数组就是一个类)的成员变量,和成员方法成变是直接在堆中有,成员方法是从方法区中获取,方法区是类的.class的各种信息。 调用某类的成员方法要在栈中运行。创建对象要在堆。堆中变量直接有,堆中方法去方法区找。 new出来的是对象,对象包含成变,栈中的变量说的就是成变

    Random random = new Random(); random.nextInt(10);

    Processed: 0.009, SQL: 10