Java二维数组的输出

Java二维数组的输出Java二维数组的输出<1>(1)输出结果右对齐”%5d”publicclassHelloWorld{publicstaticvoidmain(String[]args){intmyArray[][]={{1,2},{7,2},{3,4}};for(inti=0;i<3;i++){for(intj=0;j<2;j++)System.out.p..

大家好,又见面了,我是你们的朋友全栈君。

1. Java二维数组的输出<1>

(1) 输出结果右对齐”%5d”

public class HelloWorld { 
   
   public static void main(String[] args){ 
   
    int myArray[ ][ ] = { 
    { 
   1,2}, { 
   7,2}, { 
   3,4} };
    for(int i=0; i<3; i++){ 
   
           for (int j=0; j<2; j++)
               System.out.printf("%5d",myArray[i][j]);
           //"%5d"表示按5位的固定位宽输出整型数值。如果不足五位,则在前面补空格;超过五位,则按实际位数输出k
           System.out.println();
    }
   }
}

(2) 输出结果:

在这里插入图片描述

2.Java二维数组的输出<2>

(1) 输出结果左对齐”%-5d”

public class HelloWorld { 
   
   public static void main(String[] args){ 
   
    int myArray[ ][ ] = { 
    { 
   1,2}, { 
   7,2}, { 
   3,4} };
    for(int i=0; i<3; i++){ 
   
           for (int j=0; j<2; j++)
               System.out.printf("%-5d",myArray[i][j]);
           //"%md":输出格式为整形,长度为m(输出最小长度),左对齐
           System.out.println();
    }
   }
}

(2) 输出结果:

在这里插入图片描述

3.*我想试试,输出长度超过5会怎么样

(1)

public class HelloWorld { 
   
   public static void main(String[] args){ 
   
    int myArray[ ][ ] = { 
    { 
   1,227322}, { 
   1312487,2}, { 
   3,4} };
    for(int i=0; i<3; i++){ 
   
           for (int j=0; j<2; j++)
               System.out.printf("%-5d",myArray[i][j]);
           //"%md":输出格式为整形,长度为m(输出最小长度),左对齐
           System.out.println();
    }
   }
}

输出结果:

在这里插入图片描述

对输出结果进行分析:

(i)输出长度“最小长度为5”,所以当长度<=5时,所得为左对齐的长度为5的固定格式。
(ii)当长度>5时,完全输出,并且如输出结果第二行所示,会紧贴右边数据。

感悟:

(i)如果对输出格式(如美观整齐的矩阵格式)有要求,需要考虑到输出结果各数据的长度。
(ii)更重要的一点是,如输出结果第二行所示,会造成无法区分这两个数据,是“13124与872”,还是“131248与72”,还是“1312487与2”呢?

(2)

public class HelloWorld { 
   
   public static void main(String[] args){ 
   
    int myArray[ ][ ] = { 
    { 
   1,227322}, { 
   1312487,2}, { 
   3,4} };
    for(int i=0; i<3; i++){ 
   
           for (int j=0; j<2; j++)
               System.out.printf("%5d",myArray[i][j]);
           //"%5d"表示按5位的固定位宽输出整型数值。如果不足5位,则在前面补空格;超过五位,则按实际位数输出
           System.out.println();
    }
   }
}

输出结果:

在这里插入图片描述

对输出结果进行分析:

(i)输出“固定位宽为5”,所以当长度<=5时,所得为右对齐的长度为5的固定格式。
(ii)当长度>5时,完全输出。
#如输出结果第一行所示,长度>5的数据,会紧贴左边数据输出,即无须“当位数不足五位时,在前面补空格”。
#如输出结果第二行所示,长度>5的数据,对于右侧数据的格式无影响(应该挺理所当然哈)。
(iii)可以推测,如果某行的两个数据都超出长度5,那么它们会紧贴输出,仍然出现“难以区分两个数据分别是多少”的情况。验证如下:

在这里插入图片描述

感悟就不写了,和前一种情况是差不多的。

4.感悟:

(1)数据不会丢失精度,这一点我还是蛮喜欢的

(2)千万注意,防止两个数据紧贴在一起,造成难以区分这两个数据分别是多少。所以,应当要对于输出数据的长度进行估计,或者,我觉得在两个数据中间插入一个符号也能解决?啊,回头我去看看这种插入符号是否便于实现

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137452.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python和c++哪个好_python地名识别

    python和c++哪个好_python地名识别Ctrl+N按文件名搜索py文件ctrl+n可以搜索py文件勾选上面这个框可以搜索工程以外的文件Ctrl+shift+N按文件名搜索所有类型的文件Ctrl+shift+N可以搜索py文件,也可以搜索其它类型的文件。除了搜索不同类型的文件,Ctrl+shift+N还有一个强大之处是可以搜索路径,只需要在你搜索的词前面或后面加上/ctrl+shift+f全局字符串搜索这种搜索的名字叫做”fin…

    2022年8月28日
    3
  • Navicat Premium15安装与激活(完整激活版)

    Navicat Premium15安装与激活(完整激活版)NavicatPremium15安装与激活(完整激活版)引文:NavicatPremium15安装与激活(完整激活版)注:该文章用于下载软件包及激活成功教程包引文1:NavicatPremium15安装与激活(完整激活版)注:该文章用于下载软件包及激活成功教程包,激活全过程…

    2022年10月13日
    1
  • nextline函数_Java 中nextLine()方法没有执行直接跳过解决办法[通俗易懂]

    nextline函数_Java 中nextLine()方法没有执行直接跳过解决办法[通俗易懂]使用Java的Scanner类nextLne()方法从显示器输入数据时,nextInt()后面的nextLine()直接跳过没有执行;截图:第三个输入直接跳过通过上网的查找我终于发现了问题出在哪里:原来nextLine()函数获取的是一整行的内容其中也包括了(\n)也就是换行符而nextInt()函数获取的仅仅是一个值不包含(\n),那么nextInt()后面的nextLine()读取一行,就把(…

    2022年5月3日
    67
  • SRS软件需求规格说明书_SOR是什么文件

    SRS软件需求规格说明书_SOR是什么文件【摘要】随着信息时代科技的飞速发展,经济全球化已广为人知,英语作为全球最主要的语言之一,受到越来越多的人的喜爱,不仅为了增长知识,也为了能适应社会发展的需求。但是,学英语最重要的事首先是积累词汇,没有

    2022年8月2日
    4
  • 一次linux启动故障记录

    一次linux启动故障记录

    2021年6月16日
    86
  • bypasswaf 之报错注入

    0x00前言前面讲到了bypass联合查询和盲注,那么这章节就来个报错注入。0x01报错注入与函数此方法是在页面没有显示位,但是echomysql_error();函数输出了错误信息的时

    2021年12月11日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号