java不等长二维数组_Java中关于二维数组的理解与使用
![](/assets/blank.gif)
今天练习的时候遇到一个题目,题目需求是这样的:
需求说明:
根据3个班各5名学生某门课程的成绩,正确使用二维数组计算如图所示3个班各自的总成绩
![](/assets/blank.gif)
分析:
要实现这个功能需要存储两个信息:
- 一个是班级信息,一个是学生成绩信息,对于入门选手,首先肯定会想到用二维数组,二维数组的实质其实就是一个一维数组,只不过数组里面存的是其他数组的首地址,通过引用指向其他数组。
- 需要注意的是,学生成绩需要用户手动输入,这需要使用到Java的Scanner类,通过该类的对象调用nextInt()(接收整型数据),next()(接收字符串类型),具体用法如下:
import java.util.Scanner;//导入类Scanner sc=new Scanner(System.in);//实例化Scanner对象int studentScore=sc.nextInt();//接收用户输入的Int型数据
只需要用到两个for循环进行嵌套,用户依次输入数据存入数组;
下面是具体的代码:
import java.util.Scanner;
public class Test08 {public static void main(String[] args) {int[][] scores=new int[3][5];Scanner sc=new Scanner(System.in);int sum=0;for (int i = 0; i <scores.length ; i++) {System.out.println("********第"+(i+1)+"个班********");for(int j=0;j<scores[i].length;j++){System.out.print("请输入第"+(j+1)+"个同学的成绩:");int studentScore=sc.nextInt();scores[i][j]=studentScore;}}System.out.println("********成绩统计********");for (int i = 0; i <scores.length ; i++) {for(int j=0;j<scores[i].length;j++){sum+=scores[i][j];}System.out.print((i+1)+"班总成绩:"+sum);System.out.println();sum=0;}}
}
下面是运行结果截图:
********第1个班********
请输入第1个同学的成绩:50
请输入第2个同学的成绩:60
请输入第3个同学的成绩:70
请输入第4个同学的成绩:80
请输入第5个同学的成绩:90
********第2个班********
请输入第1个同学的成绩:10
请输入第2个同学的成绩:20
请输入第3个同学的成绩:30
请输入第4个同学的成绩:40
请输入第5个同学的成绩:50
********第3个班********
请输入第1个同学的成绩:20
请输入第2个同学的成绩:30
请输入第3个同学的成绩:40
请输入第4个同学的成绩:50
请输入第5个同学的成绩:60
********成绩统计********
1班总成绩:350
2班总成绩:150
3班总成绩:200
Process finished with exit code 0
本人小白一个,尚在努力学习中,想交流学习心得、看更多每日学习小文章,可关注我的微信公众号【Java菜鸟的进阶之路】一起交流成长!
文章链接:
Java中关于二维数组的理解与使用mp.weixin.qq.com
![](/assets/blank.gif)
java不等长二维数组_Java中关于二维数组的理解与使用相关推荐
- java 申请不定长度数组_java中申请不定长度数组ArrayList的方法
如下所示: import java.util.ArrayList; //java中申请不定长度数组 public class Test01 { public static void main(Stri ...
- java int byte数组_Java 中int与byte数组转换详解
1.与运算符的理解(&): 参加运算的两个数据,按二进位进行"与"运算.如果两个相应的二进位都为1,则该位的结果值为1,否则为0.即 0&0=0:0&1=0 ...
- 求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足条件的四位数依次存入数组b中,然后对数组b中的四位数按从大到小的顺序进行排序。
已知数据文件IN13.DAT中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位 ...
- 求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b中的四位数按从小到大的顺序进行排序
已知数据文件IN14.DAT中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中.请编制一个函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此 ...
- 数组x中数据复制到数组y中,重复的数据只存储一次,最后输出y;计算x中数据的平均值ave及大于平均值的元素个数n。c++实现
题目描述 编程序,实现如下功能: (1)定义两个一维数组x,y,不超过50个元素. (2)从键盘输入k个整数到数组x中. (3)计算x中数据的平均值ave及大于平均值的元素个数n并输出. (4)将数组 ...
- java 数组存入数据库_Java中关于二维数组的理解与使用
今天练习的时候遇到一个题目,题目需求是这样的: 需求说明: 根据3个班各5名学生某门课程的成绩,正确使用二维数组计算如图所示3个班各自的总成绩 分析: 要实现这个功能需要存储两个信息: 一个是班级信息 ...
- java 二维数组的筛选_java中的筛选遍历数组,实例展示
java中关于数组的知识点也是十分丰富的,上次已经为大家介绍过java中的二维数组排序是怎样的主要内容,今天再为大家介绍一些与数组相关的其他内容,也就是java中的筛选遍历数组,一起来看看吧. 一.$ ...
- java打印二维数组_Java中如何打印二维数组
在Java中如何打印二维数组 1.直接使用数组自带的toString------ 打印出数组的地址 2.使用Arrays.toString()---------- 打印每个二维数组的地址 3.使用Ar ...
- java 创建多维数组_java中如何创建一个多维数组?实例展示
在互联网产业发展的越发如火如荼的今时今日,越来越多的人开始投入到新兴技术的学习当中去.java作为一门十分重要的编程语言,是许多人首选的学习对象.今天就来为大家介绍一下java中如何创建一个多维数组, ...
最新文章
- 自从上了 SkyWalking,睡觉真香!!
- 仿射密码 [GKCTF2020]小学生的密码学
- jcreator编译多个java_java用JCreator怎么都编译不过去!
- python爬虫实训心得_Python爬虫小结
- Android Activity使用OnGesture事件以后与子View的Click事件冲突解决办法
- 太原理工大学c语言课程设计报告,[太原理工大学C语言实验报告.doc
- “前端+应用”两大监控利器商业化首发 ARMS领跑APM市场
- cglib动态代理导致注解丢失问题及如何修改注解允许被继承
- acer电脑设置u盘启动方法
- 记录Linux下彻底删除MySQL以及启动MySQL之后使用密码登录提示报ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost
- java 代码段 执行超时 抛异常_深入理解Java线程状态
- 信号与系统2020参考答案(网络试卷)
- json模块的转义dump 和反转义 loap
- PDF转长图片怎么转?不妨试试这个方法
- 年底裁员潮,这个冬天你怎样度过?
- [前端基础] CSS3 篇
- ¥符号在安卓上显示只有一个横杠的问题
- Vivado报错[Opt 31 - 305] Invalid connectivity on net RESETN connected to port RESETN
- 杰理AC692X---简介(1)
- 按键精灵定时执行录制脚本