前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一维数组基本知识的学习以及练习

一维数组基本知识的学习以及练习

作者头像
zxmttkx
发布2022-12-02 11:59:00
2550
发布2022-12-02 11:59:00
举报
文章被收录于专栏:java基础学习

一、一维数组

(1)数组介绍

        数组可以进行存放多个同一类型的数据。数组是一种引用数据类型,即数组就是一组数据。

(2)数组的使用

1)动态初始化

方法一:数据类型[ ] 数组名 = new 数据类型[大小]

       如:int[ ] a = new int[5];

方法二:先声明数组: 数据类型 数组名[ ]

       如:int[ ] a;

              再创建数组: 数组名 = new 数据类型[大小]

       如:a = new int[5];

2)静态初始化

方法:数据类型 数组名[ ] = {元素值1,元素值2……}

       如:int a[5] = {1, 2, 3, 4, 5};

3)数组的引用

引用方法:数组名 [下标];

注意:数组的下标是从0开始的,如:a数组第三个数的引用方法为 a[2]

(3)数组的细节

1)数组是多个相同类型数据的组合,实现对这些数据的统一管理

2)数组中的元素可以是任何数据类型,但不能混用

3)数组的下标是从 0 开始

4)数组的下标必须在指定范围内,否则报错

5)数组创建后,如果没有赋值则会有默认值

int 0、shrot 0、byte 0、long 0、float 0.0、double 0.0、String null、boolean false

(4)应用案例

1)创建一个 char 类型的 26 个元素的数组,分别 放置'A'-'Z',使用循环访问所有元素

代码语言:javascript
复制
public class ArrayExercise01 {
	public static void main(String[] args) {
 
		char[] c = new char[26];
		for(int i = 0; i < c.length; i++) {
			c[i] = (char) ('A' + i);// 'A' + i 是 int型,需要强制类型转换
			System.out.print(c[i] + " ");
		}
 
	}
}

2)请求出一个数组 int[] 的最大值 {4,-1,9,10,23},并得到对应的下标

代码语言:javascript
复制
public class ArrayExercise02 {
	public static void main(String[] args) {
 
		int[] a = {4 , -1 , 9 , 10 , 23};
		int max = a[0];
		int j = 0;
		for(int i = 1 ; i < a.length ; i++) {
			if(a[i] > max) {
				max = a[i];
				j = i;
			}
		}
		System.out.println("最大值为:" + max);
		System.out.println("最大值的下标为:" + j);
	}
}

思路分析:

1. 定义一个 int 数组 int[] a = {4,-1,9, 10,23};

2. 假定 max = a[0] 是最大值 , j=0;

3. 从下标 1 开始遍历 a, 如果 max < 当前元素,说明 max 不是真正的最大值, 我们就 max = 当前元素; j = 当前元素下标;

4. 当我们遍历这个数组 a 后 , max 就是真正的最大值,j 最大值对应的下标

二、数组赋值机制

1)基本数据类型赋值,这个值就是具体的数据,相互不影响。

如:int n1 = 10; int n2 = n1;

2)数组在默认情况下是引用传递,赋的值是地址。

3)基本数据类型赋值演示:

代码语言:javascript
复制
public class ArrayAssign {
	public static void main(String[] args) {
 
		//基本数据类型赋值,赋值方式为值拷贝
		//n2的变化,不会影响到n1的值
		int n1 = 10;
		int n2 = n1;
 
		n2 = 80;
		System.out.println("n1=" + n1);//10
		System.out.println("n2=" + n2);//80
 
	}
}

4)引用传递演示:

代码语言:javascript
复制
public class ArrayAssign {
	public static void main(String[] args) {
 
		//数组在默认情况下是引用传递,赋的值是地址,赋值方式称为 引用传递,传递的是一个地址
		int[] arr1 = {1,2,3};
		int[] arr2 = arr1; //把arr1赋给arr2
		//arr2 的值会影响 arr1 的值,所以称为引用传递
		arr2[0] = 10;
		for(int i = 0; i < arr1.length; i++) {
			System.out.println(arr1[i]);  // arr1 和 arr2 指向同一个数据空间
		}
	}
}

输出结果为:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-11-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、一维数组
    • (1)数组介绍
      • (2)数组的使用
        • 1)动态初始化
        • 2)静态初始化
        • 3)数组的引用
      • (3)数组的细节
        • (4)应用案例
        • 二、数组赋值机制
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档