1. 介绍:

    数组是一种数据类型,是引用类型,是一块连续的内存空间,用于存储和管理相同类型的多个数据。

  2. 定义:-- > 数组的声明方式
    1. 先声明,在开辟内存空间--> int [] a; a=new int[5];
    2. 声明的同时静态初始化    -- > int[] a={1,3,5}
    3. 声明并开辟内存空间    -- >int [] a=new int[5]
  3. 使用:-- >数组名[下标]:下标的有效范围是:0到长度-1;
    1. 存元素:
    2. 取元素:
    3. 遍历数组:

    代码如下:

package com.lvsling.test;

public class Test1 {

public static void main(String[] args) {

//定义一个数组

int[] a=new int[5];

//存数据

a[0]=1;

a[1]=3;

a[2]=5;

a[3]=7;

a[4]=9;

//取数据

System.out.println(a[2]);

System.out.println(a[4]);

//遍历数组中的元素

for (int i = 0; i < a.length; i++) {

System.out.println(a[i]);

}

}

}

  1. 数组扩容
    1. 创建新数组,
    2. 把原数组中的内容复制到新数组中
    3. 返回新数组

    代码如下:

package com.lvsling.test;

/*

* 扩容

*/

public class Test2 {

public static void main(String[] args){

int[] b={1,2,3,4,5};

b=expand3(b);

for(int i=0;i<b.length;i++){

System.out.println(b[i]);

}

}

//循环将原数组中所有元素逐一赋值给新数组。

public static int[] expand1(int[] a){

int[] b=new int[9];

for(int i=0;i<a.length;i++){

b[i]=a[i];

}

return b;

}

//System.arraycopy(元数组,原数组起始,新数组,新数组起始,长度);

public static int[]expand2(int[] a){

int[] b=new int[7];

System.arraycopy(a,1,b,2,3);

return b;

}

//java.util.Arrays.copyOf(原数组,新长度);

public static int[]expand3(int[] a){

return java.util.Arrays.copyOf(a,10);

}

}

  1. 自我总结:

    以上说明了数组的声明,使用,遍历以及数组的扩容。核心就是开辟出内存空间用来存储我们所需的数据。

    拓展与提升:

    1. 数组元素是有默认值的。
      1. 在数组开辟内存空间后,不给元素指定的值,系统会默认分配值。
        1. 整数--------->0
        2. 小数--------->0.0
        3. 布尔--------->false
        4. 字符--------->'\u0000'
        5. 引用类型--------->null

    2,二维数组:

    1,是一维数组的数组

    2,开辟内存空间时,至少要指定 行的维数; 

    3,声明的同时 静态初始化 必须在同一行代码中完成;

    4,开辟内存+静态数据 开辟内存时行和列的维数 都不能指定。

java基础笔记(4)----数组的更多相关文章

  1. Java基础笔记 – Annotation注解的介绍和使用 自定义注解

    Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 |  被围观 25,969 views+ 1.Anno ...

  2. 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错

    原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...

  3. Java 基础类型转换byte数组, byte数组转换基础类型

    Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组

  4. Java基础语法(7)-数组

    title: Java基础语法(7)-数组 blog: CSDN data: Java学习路线及视频 1.数组的概述 数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并 ...

  5. Java基础语法(8)-数组中的常见排序算法

    title: Java基础语法(8)-数组中的常见排序算法 blog: CSDN data: Java学习路线及视频 1.基本概念 排序: 是计算机程序设计中的一项重要操作,其功能是指一个数据元素集合 ...

  6. Java基础笔记(十)—— 数组

    数组是具有相同类型的数据的集合,是一种引用数据类型,一般具有固定的长度,并且在内存中占据连续的空间. 数组声明:数据类型[ ] 数组名;             数据类型 数组名[ ]; 如:int[ ...

  7. 黑马程序员----java基础笔记中(毕向东)

    <p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...

  8. 黑马程序员----java基础笔记上(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...

  9. Java基础语法(数组)

    第4天 Java基础语法 今日内容介绍 u 流程控制语句(switch) u 数组 第1章 流程控制语句 1.1 选择结构switch switch 条件语句也是一种很常用的选择语句,它和if条件语句 ...

  10. Java基础学习之数组基本属性和方法

    数组对于每一门编程语言都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同.Java语言中提供的数组是用来存储固定大小的同类型元素.你可以声明一个数组变量,如 int[100] 来代替直接 ...

随机推荐

  1. but the supplied types were (flex.messaging.io.amf.ASObject) and converted to (null)."

    1.错误描述 [RPC Fault faultString="Cannot invoke method  'saveOrUpdate'. " faultCode="Ser ...

  2. 芝麻HTTP: Python爬虫入门之Urllib库的高级用法

    1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...

  3. each遍历的用法

  4. Windows系统还原失败心得

    最近我的Windows10连续几天出现了蓝屏,怀疑是某软件的Bug造成的,于是想用系统还原功能回到前一段时间,我找到了那款软件安装的时间. 到了选择还原点界面,发现有5个还原点,最旧的一个刚好就是那款 ...

  5. 论文笔记(8):BING: Binarized Normed Gradients for Objectness Estimation at 300fps

    译文: <基于二值化赋范梯度特征的一般对象估计> 摘要: 通过训练通用的对象估计方法来产生一组候选对象窗口,能够加速传统的滑动窗口对象检测方法.我们观察到一般对象都会有定义完好的封闭轮廓, ...

  6. ES6学习总结一(变量;箭头函数;解构赋值)

    一.变量 var  1 可以重复声明(var a=1;var a=7;)(一开始用着会觉得限制很少,但是在大型项目会麻烦,人多嘴杂的时候定义重复了就容易出问题还不好找) 2 无法限制修改 3 没有块级 ...

  7. BaaS 的由来(1)

    百度百科是这么定义的, BaaS(后端即服务:Backend as a Service)公司为移动应用开发者提供整合云后端的边界服务.其实不仅是移动应用,现在更多的PC应用也同样适用移动端的标准. 在 ...

  8. 反射Reflection创建

    step one:(找入口) using System.Reflection; //引用需要用到的命名空间 做任何事都要有开始的地方,不例外,反射也要先找到反射的入口,举个栗子: Assembly a ...

  9. ajax 图片上传

    html 部分: <form action="" id='myForm' enctype="multipart/form-data"> <di ...

  10. 我的linux学习之路--(二)linux常用命令

    1.date 时间管理 电脑主板有电池,所有电脑断电时间正确,rtc linux:rtc 硬件时钟 clock/hwclock 系统时钟(linux操作系统用软件模拟震荡器计算)date看到就是 命令 ...