Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java错误中的二维数组(打印为空)_Java_Arrays_Loops_Oop_Dynamic Arrays - Fatal编程技术网

java错误中的二维数组(打印为空)

java错误中的二维数组(打印为空),java,arrays,loops,oop,dynamic-arrays,Java,Arrays,Loops,Oop,Dynamic Arrays,它以空值打印。。。我怎样才能摆脱它?它给了我一个例子: 出席: 利奥空 如果达不到4,我希望它只打印Leo 这是我目前的代码: import java.util.*; import java.io.*; public class Trial { public static void main(String[] args) { String [] Student ={"Tom", "Jack", "Gio", "Leo"}; String[][] At

它以空值打印。。。我怎样才能摆脱它?它给了我一个例子:

出席:

利奥空

如果达不到4,我希望它只打印Leo

这是我目前的代码:

import java.util.*;
import java.io.*;

public class Trial {

    public static void main(String[] args) {

        String [] Student ={"Tom", "Jack", "Gio", "Leo"};
        String[][] Attendance = new String[4][4];



        System.out.println("STUDENT LIST-TAKE ATTENDANCE");

        for(int i = 0; i<4; i++){
            System.out.println("Type 1 for Present, 2 for Absent, 3 for Fieldtrip, or 4 for Late " + "for " + Student[i]);
            Scanner scan1 = new Scanner(System.in);
            double Att = scan1.nextDouble();

            int j = 0;

            if (Att == 1){
                Attendance[0][j] = Student[i];
                j++;
            }

            else if(Att == 2){
                Attendance[1][j] = Student[i];
                j++;
            }

            else if(Att == 3){
                Attendance[2][j] = Student[i];
                j++;
            }

            else if(Att == 4){
                Attendance[3][j] = Student[i];
                j++;
            }

            else
                System.out.println("Retry");

        }

        System.out.println("Present: ");
        for (int k = 0; k<=3; k++)
            System.out.print(Attendance[0][k] + "   ");
            System.out.println();

        System.out.println("Absent: ");
        for (int k = 0; k<=3; k++)
            System.out.print(Attendance[1][k] + "   ");
            System.out.println();

        System.out.println("Fieldtrip: ");
        for (int k = 0; k<=3; k++)
            System.out.print(Attendance[2][k] + "   ");
            System.out.println();

        System.out.println("Late: ");
        for (int k = 0; k<=3; k++)
            System.out.print(Attendance[3][k] + "   ");
            System.out.println();


        /*
        String[][] Attendance = {
            { "Present", },
            { "Absent",  },
            { "Fieldtrip", },
            { "Late",  }

        };


            System.out.println();
        for (int i = 0; i < Attendance; i++) {
            System.out.print(Attendance[i][0] + ": ");
            for (int j = 1; j < Attendance[i].length; j++) {
                System.out.print(Attendance[i][j] + " ");
         }
         */

        }
    }
import java.util.*;
导入java.io.*;
公开庭审{
公共静态void main(字符串[]args){
字符串[]学生={“汤姆”、“杰克”、“吉奥”、“利奥”};
字符串[][]考勤=新字符串[4][4];
System.out.println(“学生名单-出勤”);

对于(int i=0;i我将以此为例,您应该能够计算出其余的:

System.out.println("Present: ");
for (int k = 0; k<=3; k++)
    System.out.print(Attendance[0][k] + "   ");
System.out.println();
System.out.println(“当前:”);

对于(int k=0;kWell,您可以在打印之前检查它是否为null。A)阅读java命名约定-变量名大小写-始终B)阅读有关使用浮点数的内容。你基本上从未使用==直接比较过它们。太好了!谢谢。但是,我有另一个问题。如果我的所有学生都在场。我会这样做:Tom-1,Jack,-1…依此类推,当它们重叠时,我得到的只是最后一个。它打印:现在:Leo,缺席,迟到和实地考察:null@ronix_247_DOIT做对其他代码块也进行了相同的更改。只有当每列有一个名称时,才能去掉空值
System.out.println("Present: ");
for (int k = 0; k<=3; k++) {
    if (Attendance[0][k] != null) {
        System.out.print(Attendance[0][k] + "   ");
    }
}
System.out.println();
System.out.println("Present: ");
for (int k = 0; k<=3; k++) {
    if (Attendance[0][k] != null) {
        System.out.print(Attendance[0][k] + "   ");
    } else {
        break;
    }
}
System.out.println();