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. Caused by: java.sql.SQLException: Field 'id' doesn't have a default value

    1.错误描述 org.hibernate.exception.GenericJDBCException: error executing work at org.hibernate.exception ...

  2. [RPC Fault faultString="Cannot invoke method 'saveOrUpdate'." faultCode="Server.ResourceUnavailable"

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

  3. Docker 小记 — Compose & Swarm

    前言 任何相对完整的应用服务都不可能是由单一的程序来完成支持,计划使用 Docker 来部署的服务更是如此.大型服务需要进行拆分,形成微服务集群方能增强其稳定性和可维护性.本篇随笔将对 Docker ...

  4. Mysql简单笔记

    对oracle还是比较熟悉的,对mysql也是零散的有些了解,今天看了下,简单总结: 1.查看mysql版本:mysqladmin --version2.查看mysql进程:ps -ef|grep m ...

  5. eclipse - The superclass "javax.servlet.http.HttpServlet" was not found on the Java

  6. 关于spring的aop拦截的问题 protected方法代理问题

    看到一篇很好的Spring aop 拦截方法的问题,  原文地址. 问题 貌似不能拦截私有方法? 试了很多次,都失败了,是不是不行啊? 我想了一下,因为aop底层是代理, jdk是代理接口,私有方法必 ...

  7. 如何从Eclipse 迁移到Android Studio 且保持Eclipse项目结构

    本文demo下载:http://www.wisdomdd.cn/Wisdom/resource/articleDetail.htm?resourceId=531 Android项目 Eclipse与A ...

  8. Python Cookbook(第3版)中文版:15.14 传递Unicode字符串给C函数库

    15.14 传递Unicode字符串给C函数库¶ 问题¶ 你要写一个扩展模块,需要将一个Python字符串传递给C的某个库函数,但是这个函数不知道该怎么处理Unicode. 解决方案¶ 这里我们需要考 ...

  9. 小结:c++中的new、operator new和placement new

    小结:c++中的new.operator new和placement new new(也称作new operator),是new 操作符,不可重载 class T{...}; T *t = new T ...

  10. Context.Response.End(); VS HttpContext.Current.ApplicationInstance.CompleteRequest();

    今天遇到一個問題,頁面Client端send一個ajax請求,然後在server端返回一個json的字符串 $.ajax({ url: "xxxxx.aspx", type: &q ...