Java基础复习—数组

本文详细介绍了Java中的数组,包括数组的定义、静态和动态初始化、访问数组元素、数组的复制、扩容、二维数组的定义与初始化,以及冒泡排序和插入排序的基本原理和代码实现。此外,还探讨了Java中使用Arrays.sort进行高效排序的方法。
摘要由CSDN通过智能技术生成

前言

​ 计算机程序离不开算法和数据结构。

​ 数据结构就是把数据按照某种特定的结构来保存。

​ 数组是编程语言中最常见的一种数据结构,可以用于存储多个数据,每个数组元素存放一个数据

​ 通常,可以通过数组元素的索引来访问数组元素,包括为数组元素赋值和取出数组元的值

Java的数组要求所有的数组元素具有相同的数据类型。因此,在一个数组中,数组元素的类型是唯一的(即一个数组里只能存放一种数据类型的数据)

数组也是一种数据类型,它本身是一种引用类型

例如: int 是一个基本类型,但 int[ ] (定义数组的一种方式) 就是一种引用类型。

数组的定义

​ Java语言支持两种语法格式来定义数组

​ 语法:

int[ ] arrayName(推荐); 具有更好的可读性

int arrayName[ ] (不推荐); 可读性差

​ 以上的数组还不能使用,只有对数组进行初始化才能使用

数组的初始化

数组的初始化: 就是对数组的数组元素分配内存空间,并为每个数组元素赋初始值

静态初始化

​ 初始化时由程序员显式指定每个数组元素的初始值,由系统决定数组长度语法格式如下

type0 arrayName = new type[]{
   element1,element2,element3,....}

​ 解析:type 是数据元素的数据类型,此处的 type 必须与定义数组变量( arrayName )时所用的 type0 相同,也可以是定义数组时所指定的 type0 的子类。

静态初始化语法格式如下

type[] arrayName = {
   element1,element2,element3,....};

例如,如下代码:

Object类是所有类的父类,包括我们所写的类,我们在使用类的时候就会利用Object类中的方法~

package day01;

public class Type {
   

	public static void main(String[] args) {
   
		
		//定义一个 int 数组类型的变量
		int [] Intarr;
		//使用静态初始化,初始化数组时只指定数组元素的初始值,不指定数组长度
		Intarr = new int[] {
   5,6,7,8,9};
		
		//定义一个Object数组类型的变量
		//String 是  Object 的子类,字符串String是一种特殊的Object实例
		//使用静态初始化,初始化数组时数组元素的类型是定义数组时数组元素类型的子类
		Object [] objecarr;
		objecarr = new String [] {
   "javaWeb","张三"};
		
		//使用静态初始化
		Object [] objecarr2;
		objecarr2 = new Object [] {
   "java","张三"};
		System.out.println(objecarr[0]);
		
		//静态初始化简化格式
		String[] arrayName = {
   "java","张三","zbt"}; 
		System.out.println(arrayName[2]);
		
		//以","为分隔符,将字符串拆分为字符数组
		String ss = "java,zbt,张三";
		String[] s1 = ss.split(",");
		for(int i=0;i<=ss.length();i++) {
   
		System.out.println(s1[i]+" ");
		}
	}
}
动态初始化

​ 初始化只指定数组的长度,由系统为每个数组元素指定初始值. 语法格式如下

type0[] arrayName = new type[length];

动态初始化的用法,代码如下

package day01;

public class Type {
   
    
	public static void main(String[] args) {
   
        
		//定义一个存放分数的数组
		//动态初始化数组,指定数组长度
		int[] score = new int[3];
		score[0] = 10;
		score[1] = 20;
		score[2] = 30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值