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. freemarker嵌入文件输出结果

    freemarker嵌入文件输出结果 1.嵌入的文件代码 inc.ftl: <#assign username="李思思"> 2.父文件代码 inner.ftl: &l ...

  2. OpenStack_I版 5.Nova部署

    Nova安装 创建配置存放目录,日志存放目录,执行文件目录,虚拟机目录  Nova配置修改 生成主配置文件 创建Nova数据库 同步Nova数据库 验证 Nova连接RabbitMQ配置修改  key ...

  3. eval及json的理解

    一,案例一 <br><br> 复制代码 var str = '{"name": "hanzichi", "age": ...

  4. xml文件的规则

    一,规则 1.1,样本 <?xml version="1.0" encoding="utf-8"?> <contactList> < ...

  5. 三:Linux 的基本命令、

    Ubuntu切换用户 su root sudo passwd root 使用管理员提权修改root 登录密码 连续输入两次即可..... 重置root 用户密码 例:当前登录用户为:ubuntu,但是 ...

  6. 【CF235C】Cyclical Quest(后缀自动机)

    [CF235C]Cyclical Quest(后缀自动机) 题面 洛谷 题解 大致翻译: 给定一个串 然后若干组询问 每次也给定一个串 这个串可以旋转(就是把最后一位丢到最前面这样子) 问这个串以及其 ...

  7. 【CF17E】Palisection(回文树)

    [CF17E]Palisection(回文树) 题面 洛谷 题解 题意: 求有重叠部分的回文子串对的数量 所谓正难则反 求出所有不重叠的即可 求出以一个位置结束的回文串的数量 和以一个位置为开始的回文 ...

  8. 360加固apk并自动签名

    我们知道Android加混淆之后,代码的安全性得到了提高,即使你hook,反编译得到的也是乱码的,对于阅读性造成了影响,为了增强代码的破解难度,我们通常退对apk进行加固,常见的有腾讯,360,爱加密 ...

  9. SpringMVC【开发Controller】详解

    前言 本文主要是讲解在Controller中的开发,主要的知识点有如下: 编码过滤器 使用注解开发 注解@RequestMapping详解 业务方法接收参数 字符串转日期 重定向和转发 返回JSON ...

  10. 建立简单的Hash table(哈希表)by C language

    #define SIZE 1000 //定义Hash table的初始大小 struct HashArray { int key; int count; struct HashArray* next; ...