java基础day5笔记

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);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值