繁体   English   中英

Java-在我的分页列表中打印一个空字符串

[英]Java - Printing a null string in my Pagination list

我有这个矩阵社交,其中包含有关每个员工的信息。 pesquisarSocioPorNif方法返回在其中找到输入的行。 关键是要完全删除该关联中的所有数据,因此我必须删除整行。 我试图通过重叠删除它,并且可以正常工作! 除了当我尝试列出它时,它列出了一个空字符串。 这是我的两种方法:

删除方法:

 public static String[][] alterarDadosSocios(String[][] socios, int nSocios, String nif) {
    int optionAlt;
    Scanner opAlt = new Scanner(System.in);
    int indice = pesquisarSocioPorNif(nif, nSocios, socios);
    if (indice != -1) {
        do {
            optionAlt = menuAlt();
            switch (optionAlt) {
                case 1:
                    System.out.println("Introduza o novo nome. Ex: Rui Filipe.. ");
                    socios[indice][1] = opAlt.nextLine();
                    System.out.println("Nome alterado com sucesso.");
                    break;
                case 2:
                    System.out.println("Introduza a nova data. (Dia/Mes/Ano), Ex: 12/05/1998");
                    socios[indice][2] = opAlt.nextLine();
                    System.out.println("Data alterada com sucesso.");
                    break;
                case 0:
                    System.out.println("Operação interrompida.");
                    break;
            }
        } while (optionAlt != 0);
    } else {
        System.out.println("NIF não encontrado. Introduza um NIF válido.");
    }

    return socios;
}

清单方法:

    public static void listarComPaginacao(String[][] socios, int nSocios) {
    int contPaginas = 0;
    for (int i = 0; i < nSocios; i++) {
        if (i % MAX_LINHAS_PAGINA == 0) {
            if (contPaginas > 0) {
                pausa();
            }
            contPaginas++;
            System.out.println("\nPÁGINA: " + contPaginas);
            cabecalho();
        }
        System.out.print("\n");
        for (int j = 0; j < N_CAMPOS_INFO; j++) {
                System.out.print(socios[i][j] + " | ");
        }
    }
}

哪些输出:

PÁGINA: 1
NIF --------- NOME -------------------- DATA DE NASCIMENTO ---------- SEXO
=========================================================================================

111111111 | Rui Filipe Monteiro Almeida | 12/06/1998 | masculino | 
222222222 | Jose Alameda Duarte dos Santos | 12/10/1990 | masculino | 
333333333 | Amadeus Antunes Roberoso Tuberculo | 17/03/2000 | masculino | 
123485748 | Romeu Julieta Runescape World | 18/06/2004 | masculino | 
678378589 | Antonieta Julia Mosquito | 20/15/1990 | feminino | 

Para continuar digite ENTER



PÁGINA: 2
NIF --------- NOME -------------------- DATA DE NASCIMENTO ---------- SEXO
=========================================================================================

889589488 | LEEROY JENKINS CHUMPS UP LETS DO THIS | 27/06/1994 | feminino | 

但删除关联之后222222222:

PÁGINA: 1
NIF --------- NOME -------------------- DATA DE NASCIMENTO ---------- SEXO
=========================================================================================

111111111 | Rui Filipe Monteiro Almeida | 12/06/1998 | masculino | 
333333333 | Amadeus Antunes Roberoso Tuberculo | 17/03/2000 | masculino | 
123485748 | Romeu Julieta Runescape World | 18/06/2004 | masculino | 
678378589 | Antonieta Julia Mosquito | 20/15/1990 | feminino | 
889589488 | LEEROY JENKINS CHUMPS UP LETS DO THIS | 27/06/1994 | feminino | 

Para continuar digite ENTER



PÁGINA: 2
NIF --------- NOME -------------------- DATA DE NASCIMENTO ---------- SEXO
=========================================================================================

null | null | null | null | 

如何避免将该空值列出?

如果您由于语言障碍而无法理解某些内容,那么我会将所有内容翻译成英文x)我发布此消息的时间有点短。 我需要此功能才能在大学一年级的最后一个项目中做到这一点,因此除了自己创建的Java方法之外,我无法使用任何Java方法。

如果您能帮我解决这个问题,我将不胜感激,如果您能读到本文,感谢您的宝贵时间! :)

如果使用ArrayList而不是数组,则可以使用delete方法删除该行,所有内容将清晰显示。 如果必须使用数组,则可以手动删除该行(通过构造一个少排1行的新数组,然后将旧行复制到该行中),或确保输出代码跳过其中包含空值的任何行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM