JAVA之数组

在JAVA中,可以使用变量定义数组。
一维数组:

  • 格式一:数据类型[] 数组名 = new 数据类型[5];
  • 格式二:数据类型[] 数组名 = new 数据类型[]{1,1,2,3,4};
  • 格式三:数据类型[] 数组名 = {1,1,2,3,4};

for-each循环:

  • 特点:用于数组,但不可以通过下标索引
 for(表达式1:表达式2){
	}

Java内存分布:

  • 栈:存放方法定义中或方法声明上定义的变量;数据使用完就消失

  • 堆:存放new出来的东西,有默认值
    - byte,short,int,long : 0
    - float,double:0.0
    - char:’\u0000’
    - boolean false
    - 引用类型:null
    - 数据使用完后,在垃圾回收器空闲的时候回收

  • 方法区:类信息 或静态变量

  • 本地方法栈:native方法:底层由c/c++实现,特点:块

  • 程序计数器:存放下一条要执行的指令的地址

  • 运行时常量池:存放字面量与符号引用。(注意:JDK 1.7 开始,存放在堆上)。

    二维数组:

  • 格式一:数据类型[][] 数组名 = new 数据类型[m][n]; //列固定

  • 格式二:数据类型[][] 数组名 = new 数据类型[m][]; //列不固定

  • 格式三:数据类型[][] 数组名 = new 数据类型[][]{{…},{…},{…}};

  • 格式四:数据类型[][] 数组名 = {{…},{…},{…}};

数组长度:.length是属性

  • 一维数组:数组名.length;
  • 二维数组:数组名.length; 数组名[i].length

字符串长度:.length()是方法

String str = "mxhdoit";
	int num = str.length();

**数组输出:**以字符串类型;相当于数组转字符串

Arrays.toString(array);  //Array操作数组的工具类;要导入包

数组拷贝:

  • for 循环
  • System.arraycopy(array,0,brr,0,array.lenth);
  • brr = Array.copyOf(array,array.length);
  • brr = array.clone(); //array:拷贝的数组 -》
  • 注意:
    System.arraycopy()与Array.copyOf的区别?
    arraycopy是一个被native修饰的方法;
    Array.copyOf内部调用了arraycopy方法;
    arraycopy速度更快;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值