Java数组

目录

数组

数组的定义

数组的静态初始化

数组的地址值

数组的动态初始化

数组元素访问

 总结:


数组

数组是一种容器,可以用来存储同种数据类型的多个值

数组容器存储数据时,应结合隐式转换(绿色正确  红色错误)

  • 例如: int类型的数组容器(boolean byte short int double)  
  • 再例如: double类型的数组容器(byte short int long float double)
  • 建议: 容器的类型,和存储的数据要保持一致

数组的定义

格式一 :  数据类型 [ ]  数组名

范例  :  int  [ ]  array

格式二 :  数据类型   数组名  [ ]

范例  :  int  array   [ ] 

数组的静态初始化

初始化: 就是在内存中,为数组容器开辟空间,并将数据存入容器中的过程

完整格式: 数据类型 [ ] 数组名 = new 数据类型 [ ]  {元素1,元素2,元素3...};

范例:

int [] array = new int [] {1,2,3};

简写格式: 数据类型 [ ] 数组名 =  {元素1,元素2,元素3...};

范例:

double [] array = {1.1,2.2,3.3};

数组的地址值

double [] arr = {1,2,3,4,5};
System.out.prinln(arr); //[D@6156e36c

sout打印出来的是数组在容器中的地址值

  • [ : 表示当前是一个数组
  • D : 表示当前数组里面的元素都是double类型的
  • @ : 表示一个间隔符号
  • 6156e36c : 才是数组真正的地址值(十六进制)

数组的动态初始化

动态初始化 : 初始化时只指定数组长度,由系统为数组分配初始值

格式 : 数据类型 [ ]  数组名 = new 数据类型 [数组长度] ; 

范例 : 创建一个长度为五的动态数组

int [] arr = new int [5]; 

由系统给出的默认初始值

  • 整数类型 : 默认初始值为0
  • 小数类型 : 默认初始值为0.0
  • 字符类型 : 默认初始值为'/u0000'  空格
  • 布尔类型 : 默认初始值为false
  • 引用数据类型 : 默认初始值 null

数组元素访问

数组的元素是通过索引访问的。数组索引从 0 开始,所以索引值从 0 到 array.length-1

实例 : 

public class TestArray {
   public static void main(String[] args) {
      // 数组大小
      int size = 10;
      // 定义数组
      double[] myList = new double[size];
      myList[0] = 5.6;
      myList[1] = 4.5;
      myList[2] = 3.3;
      myList[3] = 13.2;
      myList[4] = 4.0;
      myList[5] = 34.33;
      myList[6] = 34.0;
      myList[7] = 45.45;
      myList[8] = 99.993;
      myList[9] = 11123;
      // 计算所有元素的总和
      double total = 0;
      for (int i = 0; i < size; i++) {
         total += myList[i];
      }
      System.out.println("总和为: " + total);
   }
}

 实例的输出结果为 :

总和为 : 11367.373

  myList 数组里有 10 个 double 元素,它的下标从 0 到 9

 总结:

数组动态初始化和静态初始化的区别 : 

  • 动态初始化手动指定长度,由系统给出默认初始化值
  • 静态初始化手动指定数组元素,系统会根据元素个数,计算出数组的长度

 什么时候该用动态,什么时候该用静态呢?

  1. 只明确元素个数,不明确具体数值,使用动态初始化
  2. 需求中已经明确了要操作的具体数据,直接静态化即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值