JAVA——数组相关知识点整理及练习演绎

一、数组的概念

数组是一个变量,用于存储相同数据类型的一组数据。

二、数组的特点

1.数据类型相同

  1. 数组名实际就是一个变量,既然是变量就必须先赋值再使用

  2. 数组的每一个元素既可以是基本数据类型也可以是引用数据类型

三、数组的创建

格式:

数据类型[ ] 数组名 ;

数组名 = new 数据类型[大小] ;

例如 :int[] arrays; (先声明数组的数据类型为int型并将其命名为:arrays)

arrays=new int[5] ;(创建一个长度为5的变量)

四、数组的初始化

静态初始化
初始化的同时直接为每个元素赋值,不需要指明长度

例如int[] scores = {100,70,98,67}; //创建数组对象并初始化,存放4个成绩 。

动态初始化
1 初始化时由系统分配初始值,需要指明数组长度 //例如:int[] arrays = new int[4];

2 int[] scores = new int[10]; //创建数组对象,存放10个int数据,默认0

五、数组的赋值

数组创建完毕后可以通过下标对每个元素进行赋值 ,下标从0开始 ,数组长度 length,下标最大为 length-1 。如下图:

六、注意事项

1 标识符:数组的名称,用于区分不同的数组。

2 数组元素:向数组中存放的数据。

3 元素下标:对数组元素进行编号,从0开始,数组中的每个元素都可以通过下标来访问。

4 元素类型:数组元素的数据类型。

七、练习题

有一个数列:8,4,2,1,23,344,12。 A. 循环输出数列的值; B. 求数列中所有数值的和; C. 求出最大值;D. 将数组倒置并输出 E. 数组查找 猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数。 F. 数组排序 。

import java.util.Arrays;

import java.util.Scanner;

public class ArraySubject {

public static void main(String[] args) {

// 2、有一个数列:8,4,2,1,23,344,12

// A 循环输出数列的值。

// B 求数列中所有数值的和。

// C 求出最大值。

// D 将数组倒置并输出

// E 数组查找 猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数。

// F 数组排序

// A. 循环输出数列的值

int[] arrays = new int[7];

for (int i = 0; i < 7; i++) {

Scanner input = new Scanner(system.in - 这个网站可出售。 - 最佳的System 来源和相关信息。);

System.out.println(“请输入数组内第” + (i + 1) + “个数”);

arrays[i] = input.nextInt(); // 接收输入的值将其列入数组arrays中

}

String result = “[”; // 将数组转换为字符串后输出

for (int i = 0; i < 7; i++) {

if (i < 6) {

result += arrays[i] + “,”;

} else {

result += arrays[i] + “]”;

}

}

System.out.println(result);

// B. 求数列中所有数值的总和

int sum = 0;

for (int i = 0; i < 7; i++) {

sum += arrays[i];

}

System.out.println(“数列中所有数值的和为:” + sum);

// C. 求出最大值

int max = 0;

for (int i = 0; i < 7; i++) {

if (arrays[i] > max) {

max = arrays[i];

}

}

System.out.println(“数组内的最大值为:” + max);

// D. 将数组倒置并输出

for (int i = 0; i < arrays.length / 2; i++) {

int temp = 0;

temp = arrays[i];

arrays[i] = arrays[6 - i];

arrays[6 - i] = temp;

}

System.out.println(Arrays.toString(arrays));

// E 数组查找 猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数。

Scanner input = new Scanner(system.in - 这个网站可出售。 - 最佳的System 来源和相关信息。);

System.out.println(“请输入一位正整数”);

int Num = input.nextInt();

for (int i = 0; i < 7; i++) {

if (Num == arrays[i]) {

System.out.println(“该数在数组的第” + (i + 1) + “位”);

break;

} else if (i == 6) {

if (Num != arrays[6])

System.out.println(“该数不在数组中”);

break;

}

}

// F 数组排序

Arrays.sort(arrays); // 排序(升序)

System.out.println(“倒置后:” + Arrays.toString(arrays));

}

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值