Java数组之一维数值数组

  • Java数组之一维数值数组之成绩统计
    • 一维数组
    • 声明一维数值数组变量
    • 创建一维数值数组
    • 一维数组初始化
    • 一维数组元素的使用
    • 一维数组长度
    • 成绩统计

Java数组之一维数值数组之成绩统计

一维数组

数组对于每一门编程语言来说都是重要的数据结构之一,Java 语言中提供的数组是用来存储固定长度的同类型数据,这些数据称为数组元素。下面我们将介绍用于存储数值的一维数组。

声明一维数值数组变量

声明数值数组变量,用于代表一个对象, 只是一个名字而已, 对象还没有创建,下面是声明数值数组变量的语法:

数据类型[] 数组名;     // 中括号中不能有数字

示例:

// 声明一个用于存储int类型的数组变量 arr。
int [] arr;
// 声明一个用于存储long类型的数组变量 arr。
long [] arr;
// 声明一个用于存储double类型的数组变量 arr。
double [] arr;

创建一维数值数组

Java 语言使用 new 操作符来创建数组,语法如下:

 new 数据类型[数组长度];

后期要想使用该数组,需要把数组变量指向该数组。
示例:

// 声明一个数组变量并指向一个用于存储10个int类型的数组
int[] arr = new int[10];

一维数组初始化

数组初始化分为两种:动态初始化静态初始化
动态初始化:创建一个数组,指定数组长度,但不指定数组存储的具体值。根据数组存储数值类型的不同,会给数组自动赋不同的初始值,具体可分为以下两种:

对于 byte,short、int 和 long 类型,数组中每个值被赋值成 0;对于 float,double 类型,数组中每个值被赋值成 0.0。

动态初始化示例:

public static void main(String[] args) {// 创建一个用于存储10个int类型的数组int[] ints = new int[10];System.out.print(Arrays.toString(ints));
}

执行结果:

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

在以上实例中,数组长度 10 可用变量代替,如下所示:

public static void main(String[] args) {// 定义变量nint n =10;     // 创建一个用于存储10个int类型的数组int[] ints = new int[n];
}

静态初始化:创建一个数组,指定数组存储的具体值。
示例:

// 声明一个用于存储数字10,20,30的的数组。
// 第一种方式:
int[] arr = new int[]{10,20,30};
// 第二种方式:
int[] arr = {10,20,30};

一维数组元素的使用

数组的元素是通过索引访问的,数组索引从 0 开始。
创建数组 arr:

int[] arr = new int[]{10,20,30};

其中第一个元素 10 的索引为 0,第二个元素 20 的索引为 1,第三个元素 30 的索引为 2。我们可以通过如下方式访问数组:

数组名[索引],获取出数组中的元素。arr[0] 可以获取到元素 10;数组名[索引] = 数值,为数组中的元素赋值。arr[0]=40 可以把数组的第一个元素改成 40。

示例:

public class ArrTest {public static void main(String[] args) {// 定义数组,并赋初值int[] arr = new int[]{10,20,30};// 通过索引获取第一个元素System.out.println(arr[0]);// 为数组第一个元素赋值arr[0]=40;// 重新查看数组第一个元素System.out.print(arr[0]);}
}

执行结果:

10
40

一维数组长度

我们可以使用数组的属性 length 来获取数组的长度。
示例:

public class ArrTest {public static void main(String[] args) {// 定义数组,并赋初值int[] arr = new int[]{10,20,30};// 获取数组的长度System.out.println(arr.length);}
}

执行结果:

3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

成绩统计

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 间编写程序代码,求班级数学平均成绩,具体要求如下:

接收给定的数据(如:4 88 43 43 98 …,其中第一个数代表数组长度,其余数代表班级所有人数学成绩,这些数据用空格进行分隔)
求班级数学平均成绩,平均成绩用 double 类型表示。

测试说明

平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。

可在右侧 “测试结果”区查看具体的测试集详情。
例:
测试输入:

4 6 6 6 6 #

预期输出:

数学平均成绩为:6
/*
任务:仔细阅读给出的代码框架及注释,在 Begin-End 间编写程序代码,求班级数学平均成绩,具体要求如下:
- 接收给定的数据(如:4,88,43,43,98,#...,其中第一个数代表数组长度,其余数代表班级所有人数学成绩,# 号用于终止接收数据),遇到 # 号终止接收;
- 求班级数学平均成绩,平均成绩用 double 类型表示。注意:数字分隔符为中文逗号。*/
import java.util.Scanner;public class ArrTest {public static void main(String[] args) {// 请在Begin-End间编写代码/********** Begin **********/// 第一步:接收给定的第一个数,用于定义数组长度Scanner input = new Scanner(System.in);int n= input.nextInt();// 第二步:定义数组int[] arr = new int[n];// 第三步:把成绩赋值给数组元素for(int i=0;i<n;i++){arr[i] = input.nextInt();}// 第四步:求所有成绩的和int sum=0;for(int i=0;i<n;i++){sum+=arr[i];}// 第五步:求平均成绩double x;x=(double)sum/n;System.out.println("数学平均成绩为:"+x);//System.out.printf("数学平均成绩为:%.f",x);  //这样的输出格式不符合题意,题目中的保留几位有效数字没有明确,故不能使用这种方法。/********** End **********/}
}

1.测试输入:12 99 89 66 76 57 90 98 87 76 65 65 78
—— 预期输出 ——
数学平均成绩为:78.83333333333333

2.测试输入:10 89 8 78 9 87 68 76 56 98 88
—— 预期输出 ——
数学平均成绩为:65.7

3.测试输入:11 76 87 89 78 9 87 76 76 89 67 56
—— 预期输出 ——
数学平均成绩为:71.81818181818181

Java数组之一维数值数组之成绩统计相关推荐

  1. Java数组之一维数值数组之数据去重

    Java数组之一维数值数组之数据去重 去除数组中的重复数据 1.接收给定的数据(如:4 88 43 43 98 #-,其中第一个数代表数组长度,其余数代表数组元素,# 号用于终止接收数据,这些数据用空 ...

  2. C++做一个有关二维数组的小案例(考试成绩统计)

    考试成绩统计案例 学习目标: 二维数组的遍历 案例描述: 有三名同学(张三,李四,王五),在一次考试中的成绩分别如下表,请分别输出三名同学的总成绩 语文 数学 英语 张三 100 100 100 李四 ...

  3. C语言从青铜到王者——数组详解总结【一维数组、二维数组、字符数组、数组实例】

    所谓数组,是指将那些具有相同类型的.数量有限的若干个变量通过有序的方法组织起来的一种便于使用的形式.数组属于一种构造类型,其中的变量被称为数组的元素.数组元素的类型可以是基本数据类型,也可以是特殊类型 ...

  4. 二维数据和一维指针数组

    1.二维数组名a的含义: 定义一个二维数组a : int a[3][4] = {{1,3,5,7}, {9,11,13,15}, {17,19,21,23}}; a数组包含3个行元素,a[0],a[1 ...

  5. c++ 数组置0_09c语言数组详解

    数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来.这些按序排列的同类数据元素的集合称为数组. 在C语言中, 数组属于构造数据类型.一个数组可以分解为多个数组元素,这些数组 ...

  6. access vba 常量数组赋值_09c语言数组详解

    数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来.这些按序排列的同类数据元素的集合称为数组. 在C语言中, 数组属于构造数据类型.一个数组可以分解为多个数组元素,这些数组 ...

  7. 二维数组各行求和_数组入门 | 数组的维度和尺寸

    有点类似于数学中的矩阵 数组 具有行.列及尺寸的特征,常量数组中使用分号或逗号分隔符来辨识行列,而区域数组的行列结构则与其引用的单元格区域保持一致. 二维数组 数组的尺寸同时由行列两个元素来确定,M行 ...

  8. php中创建关联数组,以及遍历数组

    在这个地方我们将介绍在php中怎样来创建一个关联的数组,并且将数组进行遍历. <!DOCTYPE html> <html> <head> <title> ...

  9. Java学习 第三章 数组(一)一维数组

    第三章 数组 3-1 数组的概述 数组:多个相同类型数据按一定的顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理. 数组相关概念: 数组名.下标(索引.角标).元素.数组的长 ...

最新文章

  1. 面试官:说说微信和淘宝扫码登录背后的实现原理?
  2. Python lambda表达式与函数式编程
  3. flowable更换数据源与连接池
  4. Python基础教程: with语句详解
  5. 数据结构与算法之堆与堆排序
  6. 小书童——密码(洛谷-P1914)
  7. 洛阳市高中学业水平计算机考试,2019年河南洛阳市高中学生学业水平考试考点及时间...
  8. JavaScript学习(五十三)—借用构造方法继承
  9. mac安装thrift
  10. idea开发vue项目时,使用@引入组件警告:Module is not installed
  11. IE代理服务器出错导致浏览器无法上网
  12. Vbox异常解决-centos下的安装
  13. 计算机与信息技术研究生,计算机与信息技术学院研究生必读经典文献.doc
  14. adb 静默安装_GitHub - anricheng/jing_install: 静默安装与卸载
  15. 为什么算法这么难???
  16. 宏基因组分析-基于binning
  17. 又来爬小说了,纯原创
  18. AD中怎样修改原理图图纸大小
  19. 目标检测-twostage
  20. 数据库设计中的命名规范

热门文章

  1. Plugin: Memory Dump by aeon update 12.10
  2. 计算机系统在英语中的运用,在应用系统中探究计算机屏幕英语句法规律.doc
  3. (四)巴菲特与索罗斯的投资习惯:乔治索罗斯不冒险吗?
  4. 某视频播放公司笔试 2013
  5. Universal Serial Bus (USB) - 通用串行总线
  6. EverBox开发笔记-3-iCloud Document Storage
  7. mysql 最长的字段_sql 查询某个字段最长的记录
  8. 计算机应用基础第1版前言,《计算机应用基础课件》前言
  9. 编译链接脚本lds文件
  10. java计算机毕业设计vue平顶山香山寺网站源码+数据库+系统+lw文档