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


一、数组的概念

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

二、数组的特点

1.数据类型相同

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

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

三、数组的创建

格式:

数据类型[ ] 数组名 ;

数组名 = 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.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.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】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔...
    开心的锣鼓阅读 3,347评论 0 9
  • Java经典问题算法大全 /*【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子...
    赵宇_阿特奇阅读 1,916评论 0 2
  • 第四天 数组【悟空教程】 第04天 Java基础 第1章数组 1.1数组概念 软件的基本功能是处理数据,而在处理数...
    Java帮帮阅读 1,614评论 0 9
  • 50道经典Java编程练习题,将数学思维运用到编程中来。抱歉哈找不到文章的原贴了,有冒犯的麻烦知会声哈~ 1.指数...
    OSET我要编程阅读 7,172评论 0 9
  • 很久之前,我就从我表妹那里得知了易仁永澄这位老师的名字,当时就认为他是不是日本人(四个字)(具体是不是日本人我现在...
    奔跑者66阅读 138评论 2 0