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. 利用Eclipse中的Maven构建Web项目(二)

    利用Eclipse中的Maven构建Web项目 1.新建源文件夹,Java Resources鼠标右键,"New-->Source Folder" 2.新建src/main/ ...

  2. 修改MyEclipse编辑框背景色

    修改MyEclipse编辑框背景色 1.未修改之前,编辑框背景色 2.依次操作,"Window--->Preferences" 3.选择"General---> ...

  3. 芝麻HTTP:在无GUI的CentOS上使用Selenium+Chrome

    各位小伙伴儿的采集日常是不是被JavaScript的各种点击事件折腾的欲仙欲死啊?好不容易找到个Selenium+Chrome可以解决问题! 但是另一个▄█▀█●的事实摆在面前,服务器都特么没有GUI ...

  4. python 实现多层目录文件查找

    本文针对多层目录下文件的查找. 利用 os模块的基本操作,并利用递归的思想实现了目录多层查找. 代码如下: import os #dir_name: 处理文件的起始目录 def count_file( ...

  5. 异常-----freemarker.template.TemplateException:Error executing macro:mainSelect

    1.错误描述 freemarker.template.TemplateException:Error executing macro:mainSelect require parameter:id i ...

  6. 浅谈js中null和undefined的区别

    在JS中,null和undefined是经常让人摸不着头脑的东西,尤其是在数据初始化以及处理的过程中,经常稍微不注意,就会让页面在渲染时出现报错,下面来细说下,这两者之间的区别: null 表示一个对 ...

  7. 4-20mA 意义

    工业上最广泛采用的标准模拟量电信号是用4~20mA直流电流来传输模拟量. 采用电流信号的原因是不容易受干扰.并且电流源内阻无穷大,导线电阻串联在回路中不影响精度,在普通双绞线上可以传输数百米.上限取2 ...

  8. I2C总线协议的软件模拟实现方法

    I2C总线协议的软件模拟实现方法 在上一篇博客中已经讲过I2C总线通信协议,本文讲述I2C总线协议的软件模拟实现方法. 1. 简述 所谓的I2C总线协议的软件模拟实现方法,就是用软件控制GPIO的输入 ...

  9. Python--urllib3库详解1

    Python--urllib3库详解1 Urllib3是一个功能强大,条理清晰,用于HTTP客户端的Python库,许多Python的原生系统已经开始使用urllib3.Urllib3提供了很多pyt ...

  10. Educational Codeforces Round 37

    Educational Codeforces Round 37 这场有点炸,题目比较水,但只做了3题QAQ.还是实力不够啊! 写下题解算了--(写的比较粗糙,细节或者bug可以私聊2333) A. W ...