学习笔记(JAVA)——数组

本文详细介绍了Java中的数组,包括数组的定义、声明与创建(静态和动态初始化)、数组输出、二维数组的使用、Arrays类的方法如打印、赋值、比较和排序,以及稀疏数组的概念和转换。重点讲解了冒泡排序和数组的内存管理。
摘要由CSDN通过智能技术生成

目录

一、数组的定义

二、数组的声明创建

1.声明

2.数组的特性

 3.数组的创建(初始化)

(1)静态初始化

(2)动态初始化

三、数组的输出

四、二维数组 

1.定义

2.二维数组的遍历

 五、Arrays类

1.打印数组

2.Fill方法给数组赋值

3.equal方法判断两个数组是否相等

4.利用sort将数组排序

重点:冒泡排序

 六、稀疏数组


一、数组的定义

1.数组是相同类型数据的有序集合.
2.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。
3.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们

二、数组的声明创建

1.声明

首先必须声明数组变量,才能在程序中使用数组。以下时声明数组变量的语法:

dataType[] arrayRefVar; //首选!

 dataType arrayRefVAR = new dateType[arraySize];//效果相同,但不是首选方法
/*
        int[] numbers1;//java风格
        int numbers2[];//C/C++风格
        */

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

dataType[] arrayRefVar = new dataType[arraySize];

//获取数组长度
array.length

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

2.数组的特性

a.其长度是确定的。数组一旦被创建,它的大小就是不可以改变的。

b.其元素必须是相同类型,不允许出现混合类型。

c.数组中的元素可以是任何数据类型,包括基本类型和引用类型。

d.数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,

数组对象本身是在堆中的。

3.内存分析

 栈——堆——元素

 

 3.数组的创建(初始化)

(1)静态初始化

静态初始化包括:创建+赋值

形式如下:

 int[] a = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
System.out.println(a[2]);
/*打印结果为:
2
*/

不使用new来进行声明,而是直接创建一个数组 

(2)动态初始化

动态初始化:包括默认初始化
 int[] b = new int[10];
        b[0] = 10;
        System.out.println(b[0]);
 /*打印结果:
10
*/

若输出的索引值超出数组的长度,则会进行报错:如

int[] b = new int[10];
        b[0] = 10;
//元素赋值....
        System.out.println(b[11]);

报错: 

 意思为数组越界,索引值超过数组长度。

三、数组的输出

打印数组元素,使用下标索引值:

     //打印数组元素
        System.out.println(nums[10]);

遍历数组:

for(int n :nums){
            System.out.print(n+"\t");
        }

计算数组所有元素的和:

 int sum = 0;
        for(int i = 0;i<nums.length;i++){
            sum = sum + nums[i];
        }
        System.out.println("总和为:"+sum);//若将sout语句放在for循环中,则每一次得sum值均会被输出
    

完整代码为:

public class Example01 {
    public static void main(String[] args){ 
        int[] nums = new int[10];
        nums[0] = 0;
        nums[1] = 1;
        nums[2] = 2;
        nums[3] = 3;
        nums[4] = 4;
        nums[5] = 5;
        nums[6] = 6;
        nums[7] = 7;
        nums[8] = 8;
        nums[9] = 9;
        
        //打印数组元素
        System.ou
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值