java数组

# 基本概念
    数组是一组数据
    是使用有序的方式对数据进行存储的一种结构
    
# 数组中的名词和属性
    数组的元素
         数组的索引/下标/角标:每个元素的门牌号(标识),
         从0开始的数组可以根据下标获取元素:数组名[下标]
         数组的长度:数组元素的个数,数组名.length
    push与pop
        push:在数组的尾部插入元素,返回值是添加元素后数组的长度
        pop:从数组的尾部删除一个元素,返回值是删除的元素


# 数组的特性
    - 长度是固定不可变的
    - 所有的数据类型都有自己对应的数组
    - 同一个数组数据类型必须一致
    
# 创建数组
    - 静态创建/静态初始化
        - 完整写法
          数据类型[ ] 数组名 = new 数据类型[]{数据,数据,数据};
          
        - 简便写法
          数据类型[ ] 数组名 = new {数据,数据,数据}
    
    - 动态创建/动态初始化
      数据类型[ ] 数组名 = new 数据类型[长度];
      系统会给默认值(出厂设置)
      - 整数类型:0
      - 浮点数类型:0.0
      - 字符串(引用数据类型)类型:null
      - char:0/空字符
      - 布尔类型:false
      
# 直接打印数组名
    [I@15db9742
    - @ 分隔符
    - [I 这个数据类型是int类型的一维数组
    - 15db9742  是十六进制的内存地址
      进制常识:十进制,没有十,0~9,10
                二进制,没有二,0~1,10
                十六进制,没有16,0~9 a b c d e f 
                
                
# java内存结构
    - 寄存器 由cpu直接调度
    - 本地方法区 由本地操作系统调度
    - 方法区 存储java编译好后的class文件的内容
    - 堆 对象的实例(new出来的东西,等号的右边))
    - 栈 基本类型的局部变量,对象的引用(等号左边)
    
# 数组的遍历
    - 概念:想要一个一个获取数组的元素
    - 方式一:单独的根据下标一个一个拿
    - 方式二:使用循环遍历  i

例1

const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]

for(let i = 0; i < arr.length; i++) {
    let value = arr[i];
    console.log(value);
}

# 输出结果:
# 1 2 3 4 5 6 7 8 9


    
# 数组中思想
    - 累加的思想
        在循环外面定义一个变量
        在循环过程中进行“累”的运算
        
        将没有规律的数据放在一个数组中进行统一遍历运算
        
    -统计的思想
    在循环遍历之外定义一个变量用于计数
    在循环遍历过程中判断满足条件的情况下,计算器增加
    
    - 求最值的思想 
        在循环遍历之外 定义变量 作为 参照物
        在循环过程中 将参照物与每一个元素进行比对
        如果元素比参照物大,将元素的值赋给参照物
        
# 数组的修改
    - 元素的修改
        数组名

    - 地址的修改
        int[] array={1,2,3,4}
        array = new int[];
        
        int[] arr = {1,2,4};
        
        array = arr;// 数组的浅拷贝,赋值地址(本质上就是同一个对象,互相影响)
        

       例1. map

map 此方法是将数组中的每个元素调用一个提供的函数,结果作为一个新的数组返回,并没有改变源数组

var arr = [1,2,3,4,5];
			var newArr1 = arr.map(function(a){
				// 将条件的结果返回到新数组中
				return a > 5
			})

例2.

deduce

var array = [1,2,3,4,5]; // a 累加和  b数组元素
			var add = array.reduce(function(a,b){
				return a += b
			})

此方法是所有元素调用返回函数,返回值为最后结果,传入的值必须是函数类型

    - 深拷贝
        将某个数组中的每一个元素一个一个赋值给另一个数组
        本质上是两个对象(两个数组,互不影响)
        
# Arrays.toString(array)  //打印array数组中的内容

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值