Educoder/头歌JAVA实训——JAVA入门:数组基础

第1关:初识数组

相关知识

数组是什么

如果说我们之前使用的变量可以比作是一个装水的杯子,那么数组你可以看做是一个杯架(只能装一种杯子的杯架)。

怎么定义数组

  1. 变量类型[] 数组名 = {数据1,数据2,数据3,...};

 

怎么访问数组中的元素

访问数组中的元素使用:数组名[索引值],索引值一般也叫做数组的下标。

  1. 数组名[数组下标]

编程要求

Begin-End区域中定义一个int类型数组 scores,录入三个值,918860,最后输出数组中的三个值,效果如图:

 

package step1;

public class HelloWorld {
	public static void main(String[] args) {
		/********** Begin **********/		
		int[] scores={91,88,60};		
		System.out.println("数组的第一个值为:"+scores[0]);   //在这里输出数组的第一个值
		System.out.println("数组的第二个值为:"+scores[1]);	//在这里输出数组的第二个值
		System.out.println("数组的第三个值为:"+scores[2]);	//在这里输出数组的第三个值
		/********** End **********/
	}
}

 第2关:数组的使用

相关知识

静态初始化

在程序运行前就能确定数组的大小和数组中的初始数据我们称之为静态初始化。 例如:

  1. float[] stuScores = {80.0f,70.0f,90.0f,66.5f};
  2. int[] nums = {80,70, 90,66};
  3. char[] chs = {‘a’,’b’, ‘c’,’d’};

动态初始化

数组的大小或数组中数据在程序运行时才能决定,且用到new这个关键字来确定数组的大小或初始数据我们称之为动态初始化。 定义数组:变量类型[] 数组名 = new 数据类型 [ 数组长度 ];

定义数组与初始化分离:

赋值: 初始化之后就可以向数组中放数据了,数组中元素都是通过下标来访问的,例如向 stuScores数组中存放学生成绩:

测试说明

我会对你的程序测试两次:

  

package step2;

import java.util.Scanner;

public class HelloWorld {
	public static void main(String[] args) {
				
		/********** Begin **********/
		//在这里定义一个长度为4的字符串数组,用来存放学生姓名
		String[] stuNames =new String[4];            ;  		
		//在这里给stuNames数组赋值  分别为   张三,张无忌,张三丰,张岁山
		stuNames[0]="张三";
        stuNames[1]="张无忌";
		stuNames[2]="张三丰";
		stuNames[3]="张岁山";
		//在这里输出stuNames数组中的数据
		System.out.println("数组中的第一个数据为:" + stuNames[0]);
		System.out.println("数组中的第二个数据为:" + stuNames[1]);
		System.out.println("数组中的第三个数据为:" + stuNames[2]);
		System.out.println("数组中的第四个数据为:" + stuNames[3]);
				
		int[] scores;
		Scanner sc = new Scanner(System.in);
		//在这里使用Scanner获取系统输入的整数,并用获取到的数据来设置scores数组的长度
		int length = sc.nextInt();
		scores = new int[length];
		/********** End **********/		
		System.out.println("数组scores的长度为:" + scores.length);
	}
}

第3关:选择题(1)

第4关:数组练习-平均值和最大值 

相关知识

获取数组的长度

数组的length属性用于记录数组中有多少个元素或存储单元,即记录数组的长度是多少。

  1. int[] nums = new int[10];//声明一个int型数组并动态初始化其大小为10
  2. System.out.println(nums.length);//显示当前数组的大小

输出:10

遍历数组

通俗的理解,遍历数组就是:把数组中的元素都看一遍

示例如下:

  1. int[] arr = {1,3,5,7,9};
  2. for(int i = 0 ; i<arr.length; i++){
  3. System.out.print(arr[i] + ",");
  4. }

输出:1,3,5,7,9

如何求出最大值

要求出数组的最大值,是不是很像是打擂台呢?

对于一群人我们不知道谁最厉害,所以我们准备一个擂台,并挑选第一个人为擂主(max),擂台下的人不断的(循环)来挑战擂主,如果赢了那挑战者就是擂主,之前的擂主就下台了,直到没有挑战者了,那最后一个擂主就是最厉害的那个了。

测试说明

我会对你编写的代码进行测试:

测试输入:49151232; 预期输出: 平均值:44.0 最大值:91

测试输入:511511222100; 预期输出: 平均值:57.2 最大值:151

提示:

  1. int a = 3;
  2. int b = 2;
  3. System.out.println(a/b);
  4. System.out.println((double)a/b);

输出: 1 1.5

package step3;

import java.util.Scanner;

public class HelloWorld {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int[] scores = new int[sc.nextInt()];
		
		//循环给数组赋值
		for(int i = 0 ; i< scores.length;i++){
			scores[i] = sc.nextInt();
		}
		/********** Begin **********/
		//在这里计算数组scores的平均值和最大值
		int sum=0;
        for(int i=0;i<scores.length;i++){
            sum+=scores[i];
        }
        double temp=(double)sum/(double)scores.length;

        int t=-1;
        for(int i=0;i<scores.length;i++){
            if(t<scores[i]){
                t=scores[i];
            }
        }
		System.out.println("平均值:" +temp );
		System.out.println("最大值:" +t );
		/********** End **********/
	}
}

 第5关:二维数组

相关知识

在实际考试中我们不止考试一门而是多门,那么多门考试的成绩我们需要用编程语言来处理时,我们怎么保存这些数据呢?

这就需要用到二维数组了。

二维数组

定义:二维数组是指以一维数组作为元素的数组。 语法:数据类型[行][列] 数组名

二维数组的初始化

静态:

动态:

二维数组的使用

访问数组中的元素:

使用技巧:循环输出二维数组中的数据。

结果:

编程要求

1.在右侧Begin-End区域中定义如下二维数组,使用for循环输出数组中所有的数据:

2.使用for循环将上述数组中的数据全部改为:

最后输出修改后scores数组中的数据。

package step4;

public class HelloWorld {
	public static void main(String[] args) {
		/********** Begin **********/
		int[][]score={
            {92,85},
            {91,65},
            {90,33}
        };
        for(int i=0;i<score.length;i++){
            for(int j=0;j<score[i].length;j++){
                System.out.println(score[i][j]);
            }
        }
		for(int i=0;i<score.length;i++){
            score[i][0]=1;
            score[i][1]=2;
        }
		for(int i=0;i<score.length;i++){
            for(int j=0;j<score[i].length;j++){
                System.out.println(score[i][j]);
            }
        }
		/********** End **********/
	}
}

第6关:选择题(2)

  • 16
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: educoder实训平台提供了丰富的Java数组基础实训题目,可以帮助学习者掌握Java数组的基本概念、创建、初始化、遍历、排序等操作。通过实践,学习者可以更好地理解Java数组的使用方法和应用场景,提高编程能力和解决问题的能力。 ### 回答2: educoder实训平台是一个非常好的学习编程的平台,它提供了很多的课程和实训来帮助学习者更好地理解各种编程语言和编程思想。其中,java数组基础是非常重要的内容,它涉及到了java数组的基本操作和使用方法,下面我们来具体了解一下。 首先,我们需要了解什么是数组。在java中,数组是一个存储相同类型元素的容器,可以通过下标来访问数组中的元素。数组的大小固定不变,因此在定义数组时,需要指定它的大小。 在educoder实训平台中,学习者可以通过许多练习来掌握数组基础操作,例如:创建一个数组,并初始化数组中的元素;改变数组中某个元素的值;以及遍历数组以访问所有元素等。 此外,educoder实训平台还提供了相关的算法题目来帮助学习者加深对java数组的理解,例如:查找数组中的最大值或者最小值;对数组进行排序等等。 总的来说,通过educoder实训平台学习java数组基础,学习者可以更好地掌握数组的操作方法,更快地编写出高效的代码。同时,学习者还可以通过算法题目来锻炼自己的编程思维和力量。 ### 回答3: Educoder是一款很好的在线编程实训平台,其中涵盖了许多不同领域的课程,今天我们来谈一谈EducoderJava数组基础答案。 在EducoderJava数组基础课程中,主要介绍了Java数组的定义、初始化、访问、遍历等基础知识,同时还涉及到了数组的一些常见操作,如排序、查找等。 在练习过程中,我们需要考虑一些不同的题目,比如如何计算数组的和、如何寻找最大值和最小值、如何进行元素反转、如何判断两个数组是否相同等等。 通过课程和练习,我们可以掌握Java数组的基本操作技巧,深刻理解数组的本质,这对于我们编写Java程序来说是非常有帮助的。当我们掌握了数组的基本操作后,就可以尝试着编写更为复杂的Java程序,比如二维数组、多维数组,这些也是很重要的知识点。 总之,通过EducoderJava数组基础课程和练习,我们可以轻松学会如何定义和操作Java数组,这对我们日后的编程学习和实践都是非常有帮助的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆小玖

您的鼓励是我的不竭动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值