当前位置: 首页 > news >正文

a站是什么如何建设一个生活服务网站

a站是什么,如何建设一个生活服务网站,华容网站定制,网站制作案例哪家强1维数组是是一行数字的输出,那么多维数组就是行列等等的数字(这里主要写2D array)12.1什么是二维数组二维数组根据一维数组建立的,一维数组是一行数据,但是二维数组是一个行一个是列进行的。二维数组 多行&#xff08…

1维数组是是一行数字的输出,那么多维数组就是行列等等的数字

(这里主要写2D array)

12.1什么是二维数组

二维数组根据一维数组建立的,一维数组是一行数据,但是二维数组是一个行一个是列进行的。二维数组 = 多行(每行是一个一维数组)所以是一维数组的进阶版

12.2二维数组的创建与初始化

12.2.1二维数组的创建

首先,得创建一个二维数组才能初始化。

import java.util.Scanner;
public class r4 {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);String [][] grades = new String[5][5];
}}

这里建立了 二维数组,是一个5\times 5的,这里前面的是行,后面的是列,是一个矩阵,当然在二维数组中,不一定需要行数等于列数的。

12.2.2二维数组的初始化

初始化二维数组有两个方法

12.2.2.1直接初始化赋值
​
int[][] weird = {{1, 2},{3, 4, 5},{6}
};​

同样可以赋值,并且二维数组是不需要行列数相同的,随便都行。

12.2.2.2用户输入

二维数组可以让用户输入,但是需要通过for循环实现。在这里2维数组,两个维度,所以必须使用for嵌套才行。

  for (int i = 0; i < matrix.length; i++) {for (int j = 0; j < matrix[i].length; j++) {System.out.print("请输入第 " + i + " 行第 " + j + " 列的值: ");matrix[i][j] = input.nextInt();}}

这个首先i是行数,然后j是列数,i很好理解每次i加一,然后i必须小于二维数组的长度才行。但是j的范围是比较奇怪的,j的范围是每一行的长度,每一行的长度就是列数,比如说第一行有4长度,那么列就是4长度。

然后用户可以输入自己想要输入的数字,从而写在对应的i,j中。

12.3二维数组的使用

同样还是一个增删改查的使用方法

和1维数组一样,无法增或者删,所以只写关于改于查的

12.3.1改

改与1维数组很像。

public class i {public static void main(String[] args) {// TODO Auto-generated method stubint[][] weird = {{1, 2},{3, 4, 5},{6}};weird[1][2] = 34;}}

直接写入你想要改的下标,(注意这里的1,2指的是第二行第三个数字改成34.)

下标还是从0开始,不管是行还是列都是这样。

12.3.2查

12.3.2.1长度查询

这里的长度查询是行的长度与列的长度查询,之前也写过了如何写行于列的长度,

matrix.length

行的长度(有几行),列的长度是每一行有多少个,便是列的长度

matrix[i].length
12.3.2.2遍历

这里的遍历选择使用for增强来写

在1维数组中,可以直接用一个for增强来遍历整个数组,但是在2维数组中需要使用两个for增强语句来写

第一步先把数组中的行分别保存到row中,然后再用1维数组的,把每一行的数字拿出来放到vol中

public class i {public static void main(String[] args) {// TODO Auto-generated method stubint[][] weird = {{1, 2},{3, 4, 5},{6}};weird[1][2] = 34;for(int[] row : weird) {for(int vol : row) {System.out.print(vol + " ");}System.out.println();}}}

然后最后打印每一个vol的值 然后呢 每一行中都需要空格,如果这一行循环结束,有System.out.println()来换行。

12.4二维数组的应用

二维数组通常应用在 表格登记价格,登记学生成绩,五子棋,围棋等等都需要使用到二维数组

这一篇中,写一个等级学生成绩的代码。

首先学习成绩的代码是一个表格,在表头中写号对应的

所以需要创建一个5*5的表格。并且需要把表头写好,因为表头不会改变,改变的下面的值

import java.util.Scanner;
public class r4 {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);String [][] grades = new String[5][5];grades[0][0] = "学生";grades[0][1] = "数学";grades[0][2] = "英语";grades[0][3] = "物理";grades[0][4] = "语文";}
}

那么表头表示好后,因为需要用户输入,所以需要使用到for循环嵌套来进行

for(int i = 1;i<=grades.length-1;i++) {for(int j = 0;j<grades[i].length;j++) {

在这里i必须等于1因为第零行已经写完了(第零行是表头所以i需要从0改成1)

然后分析一下,表格有什么特殊性,第一列必须是名字,其他都是数字,然后呢第二列是数学成绩,第三行是英语成绩等等

所以这里就是分类讨论了,之前总结过,分裂讨论在代码中就是if语句,便可以写出来了

if(j==0) {System.out.println("第 " +  i + " 个学生名字是 ?");grades[i][j] = input.next();}else if(j==1) {System.out.println("第 " +  i + " 个同学的数学成绩是多少呢");grades[i][j] = input.next();}else if(j==2) {System.out.println("第 " +  i + " 个同学的英语成绩是多少呢");grades[i][j] = input.next();}else if(j==3) {System.out.println("第 " +  i + " 个同学的物理成绩是多少呢");grades[i][j] = input.next();}else if(j==4){System.out.println("第 " +  i + " 个同学的语文成绩是多少呢");grades[i][j] = input.next();}

这里当然也可以写成switch-case-default的形式

然后呢 最后使用for增强进行遍历 然后打印出来

System.out.println("成绩的表格是 ");for(String [] row : grades) {for(String vol : row) {System.out.print(vol+ " ");}System.out.println();}

那么总的代码是

import java.util.Scanner;
public class r4 {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);String [][] grades = new String[5][5];grades[0][0] = "学生";grades[0][1] = "数学";grades[0][2] = "英语";grades[0][3] = "物理";grades[0][4] = "语文";for(int i = 1;i<=grades.length-1;i++) {for(int j = 0;j<grades[i].length;j++) {if(j==0) {System.out.println("第 " +  i + " 个学生名字是 ?");grades[i][j] = input.next();}else if(j==1) {System.out.println("第 " +  i + " 个同学的数学成绩是多少呢");grades[i][j] = input.next();}else if(j==2) {System.out.println("第 " +  i + " 个同学的英语成绩是多少呢");grades[i][j] = input.next();}else if(j==3) {System.out.println("第 " +  i + " 个同学的物理成绩是多少呢");grades[i][j] = input.next();}else if(j==4){System.out.println("第 " +  i + " 个同学的语文成绩是多少呢");grades[i][j] = input.next();}}}System.out.println("成绩的表格是 ");for(String [] row : grades) {for(String vol : row) {System.out.print(vol+ " ");}System.out.println();}}}

输出是

http://www.dtcms.com/a/440675.html

相关文章:

  • 建设免费网站登录网址网站建设开发案例
  • 化妆品建设网站的目的wordpress 小米商城模板
  • 手机网站自动跳转让人做网站 需要准备什么条件
  • 做项目挣钱的网站wordpress没有php.ini
  • wordpress搜索收录自己建个网站做优化
  • 国内做视频的网站有哪些有没有做粤菜的网站
  • 专门做瑜伽的网站标签在线设计平台
  • 宿迁企业网站建设thinkphp企业网站
  • 分析苏宁易购的网站建设做百度药材种苗网站
  • 服装商务网站建设策划书如何做贷款网站推广
  • Google Drive云盘清理,一键释放海量空间!
  • 地址 上海石门二路 网站建设亚马逊seo搜索什么意思
  • 网站域名解析ip地址如何 申请个人网站
  • 服装网站建设需要什么内容网站常用特效
  • 网站换服务器 备案网络营销有本科吗
  • 重庆可视化网站制作go语言 做网站
  • 网站开发运营地方门户网站app
  • 在线做logo印章网站企业营业执照查询系统
  • 私人免费网站怎么下载企业制作网站服务
  • 做网站购买域名洛阳网站搭建
  • 我自己做个网站怎么做成都小程序建设乚成都柚米
  • 光明新区建设网站上海公司注册核名官网
  • 网站seo运营培训机构绘图软件有哪些
  • 徐州市城乡和城乡建设厅网站首页微信小程序开发定制公司
  • 【FreeRTOS】第八课(1):信号量(Semaphore)
  • 广州网站建设网站开发怎么做多语言网站
  • 重庆专业做淘宝网站抖音代运营排名
  • 怎么让自己的网站稍微变前面点中国互联网排名前十的公司
  • 佛山营销网站建设费用东莞专业做外贸网站的公司
  • 【LLM】基于ms-Swift大模型SFT和RL的训练实践