一、数组声明创建

首先必须声明数组变量,才能在程序中使用数组。

声明数组变量的语法如下:

dataType[] arrayRefVar;

例如:

int[] nums;

Java语言使用new操作符来创建数组,语法如下:

dataType[] arrayRefVar = new dataType[arraySize]

数组的元素是通过索引访问的,数组索引从0开始。

获取数组长度:

arrays.length

二、三种初始化及内存分析

  • 静态初始化

    例如:

int[] a = {1, 2, 3};

  • 动态初始化

    例如:

int[] a = new int[2];

a[0] = 1;

a[1] = 2;

  • 默认初始化

    隐式初始化,比如int类型默认值为0,String类型值默认为null。

三、数组的基本特点

  1. 数组一旦被创建,它的大小就是不可以改变的;
  2. 数组中的元素必须是相同类型,不允许出现混合类型;
  3. 数组中的元素可以是任意数据类型,包括基本类型和引用类型;
  4. 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。

四、多维数组

多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。

二维数组

int a[][] = new int[2][5];

以上二维数组a可以看成两行五列的数组。

五、Arrays类

数据的工具类java.util.Arrays;

常用功能:

  • 给数组赋值:通过fill方法;
  • 对数组排序:通过sort方法,按升序;
  • 比较数组:通过equals方法比较数组中元素是否相等;
  • 查找数组元素:通过binarySearch方法对排序好的数组进行二分查找法操作。

六、冒泡排序

十大经典排序:

https://www.runoob.com/w3cnote/bubble-sort.html

七、稀疏数组

Java基础Day5-数组的更多相关文章

  1. java基础-day5

    第05天 java基础知识 今日内容介绍 u 方法的概述及基本使用 u 方法的练习及注意事项 u 方法的重载及参数传递 u 方法的操作数组的练习 第1章   方法的概述及基本使用 1.1  方法定义格 ...

  2. Java基础-反转数组

    /** java基础,如何将一个数组反转,思考方法采用使用临时变量的情况下,将第一个元素与第二个元素进行反转,需要定义两个索引,一个记录数组的第一个元素与最后一个元素,将其两两交换* */public ...

  3. Java基础之 数组详解

    前言:Java内功心法之数组详解,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) 数组概念 同一种类型数据的集合.其实数组就是一个容器. 数组 ...

  4. java基础(十) 数组类型

    1. 数组类简介   在java中,数组也是一种引用类型,即是一种类. 我们来看一个例子,理解一下数组类: public static void main(String[] args) { Class ...

  5. java 基础概念 -- 数组与内存控制

    问题1: Java在声明数组的过程中,是怎样分配内存的? 在栈内存中 建一个数组变量,再在堆内存中 建一个 数组对象.至于详细的内存分配细节,还得看 该初始化是 数组动态初始化 还是 数组静态初始化. ...

  6. Java基础:数组的声明,循环,赋值,拷贝。

    数组的声明 一般有两种形式的声明: int[] a; int a[]; 这两种声明都没错,但是大多数都使用第一种声明,因为变量名是独立的,不带任何符号. 声明一个数组,并没有将a真正的初始化为一个数组 ...

  7. Java基础总结--数组

    ---数组的定义---组织存储一组数据1.存放相同类型数据的集合--就是一种容器本质上变量也是一种容器--区别就是只存储了一个数据的容器--面对容器,而不是分散的数据eg.买一盘鸡蛋--蛋托其实就是容 ...

  8. java 基础知识-数组的7种算法(排序、求和、最值、遍历...)

    遍历 遍历就是把这个数组的每个元素 显示出来 遍历的方法就是先定义这个数组的大小,然后用FOR循环来完成数组,例如 double[] score = new double[5]; Scanner in ...

  9. Java基础之数组类型

    对于Java,前面的一些基础概念不是很想写,看了看还是从数组开始写吧(毕竟数组是第一个引用类型,相对复杂一点),我也是学了JAVA不是很久,目前看完了JAVA的基础视频,还有JAVA疯狂讲义这本书的大 ...

  10. 黑马程序员——JAVA基础之数组

    ------- android培训.java培训.期待与您交流! ---------- 数组: 数组的定义: 数组是相同类型数据的集合, 描述的是相同类型的若干个数据按照一定的先后顺序排列组合而成,其 ...

随机推荐

  1. 从main_phase跳回reset_phase的方式

    在main_phase中调用: phase.jump(uvm_reset_phase::get()); 注意需要防止进入死循环.

  2. C# 两个list集合合并成一个,及升序降序

    C# List集合合并   在开发过程中.数组和集合的处理是最让我们担心.一般会用for or foreach 来处理一些操作.这里介绍一些常用的集合跟数组的操作函数.  首先举例2个集合A,B. L ...

  3. wpf 查找指定类型的子元素

    public List<T> GetChildObjects<T>(DependencyObject obj, Type typename) where T : Framewo ...

  4. 论文笔记:Symbolic Execution for Software Testing: Three Decades Later

    论文笔记:Symbolic Execution for Software Testing: Three Decades Later 作者 Cristian Cadar 是英国帝国理工学院SRG(Sof ...

  5. linux安装EMQ

    1.拉取Emqx包 wget https://www.emqx.com/zh/downloads/broker/4.2.14/emqx-centos7-4.2.14-x86_64.rpm 2.安装服务 ...

  6. unity笔记001

    熟悉场景和物体的基本操作,q移动场景,e旋转物体,放大缩小,V键顶点吸附,相比快捷键,还是喜欢用xyz参数控制

  7. js中常用的运算符

    1. ?. 链接运算符 特性: 一旦遇到空置就会终止 例子: let name = obj?.name persion.getTip?.() // 没有getTip 方法则不会执行 2. ?? 空值合 ...

  8. Office & WPS 基础篇

    基础知识 安装office 推荐使用Microsoft Office,原因不详,不做讨论 使用Office tool plus安装,不要三年前版本,一般三年一代,工具自己找,版本文件自己找. 具体选项 ...

  9. ubuntu20.04系统openjdk11变更openjdk-8-jdk

    ubuntu20.04系统openjdk11变更openjdk-8-jdk一.卸载openjdk11先检查是否安装,命令:dpkg --list | grep -i jdk移除openjdk包,命令: ...

  10. 90、java ftp 读取文件

    https://blog.csdn.net/qq_38380025/article/details/80679128