1.数组
数组的概念:是一种容器,可以存放多个数据值
数组的特点
①数组是一种引用数据类型
②数组当中的多个数据,类型必须统一
③数组的长度在程序运行过程中不可以更改
数组的初始化:在内存当中创建一个数组,并且向其中赋予一些默认值
常见的两种初始化方式
①动态初始化(指定长度)
②静态初始化(指定内容)
动态初始化数组格式:
数组类型 [ ] 数组名称 = new 数据类型 [数组长度];
解析:
左侧的数据类型:也就是数组当中保存的数据,全是统一的什么类型
左侧的中括号:代表我是一个数组
左侧的数组名称:给数组取个名字
右侧的new:代表创建数组的动作
右侧的数据类型:必须和左侧的数据类型保存一致
右侧中括号的长度:也就是数组当中可以保存多少个数据,是一个int数字
静态初始化数组格式:
数组类型 [ ] 数组名称 = new 数据类型 [ ]{元素1,元素2,元素3,.....};
静态初始化数组省略格式:
数组类型 [ ] 数组名称 = {元素1,元素2,元素3,.....};
动态初始化和静态初始化都可以拆分为两个步骤#静态初始化一旦使用省略模式,就不能拆分步骤
例: int[ ] arrayA;
arrayA = new int[ ] {1,2,3};
如何获取静态数组的长度:数组名称.length(这将会得到一个int数字,代表数组的长度)
数组元素反转
①数组元素反转其实就是对称位置的元素交换
②表示对称位置需要两个索引
③利用第三个变量进行倒手
④在min<max的时候进行交换
数组是可以作为方法的参数的
当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值
使用数组作为返回值类型,可以返回多个返回值
任何数据类型都能作为方法的参数类型,或者返回值类型
Java的内存需要划分成为5个部分:
1.栈(Stack):存放的都是方法中的局部变量。方法的运行一定要在栈当中运行。
局部变量:方法的参数,或者是方法科内部的变量
作用域:—旦超出作用域,立刻从栈内存当中消失。
2.堆(Heap) :凡是new出来的东西,都在堆当中。堆内存里面的东西都有一个地址值:16进制
堆内存里面的数据,都有默认值。规则:
如果是整数 默认为0
如果是浮点数 默认为0.0
如果是宁符 默认为"\uo00o
如果是布尔 默认为false
如果是引用类型 默认为null
3.方法区(Method Area):存储.class相关信息,包含方法的信息。
*4.本地方法栈(Native Method Stack) : 与操作系统相关。
*5.寄存器(pc Register) : 与CPU相关。