有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

sql Java隐藏从数据库检索的空值

我使用下面的代码从数据库中获取所有结果

while(rs1.next()) {
    for(int i = 1; i < columnsNumber; i++)
        System.out.printf(rs1.getString(i)+"    ");
    System.out.println();
}

它们的形式如下:

1       google      com     null        
2       facebook    com     null        
3       youtube     com     null
4       bbc         com     uk

我不想显示空值。尽管仍显示其余记录。 谢谢!


共 (3) 个答案

  1. # 1 楼答案

    只需在打印列单元格元素之前进行简单的空检查

    while(rs1.next()) {
        for(int i = 1; i < columnsNumber; i++)
            System.out.printf(rs1.getString(i) == null ? "" : rs1.getString(i) + "\t");
        System.out.println();
    }
    
  2. # 2 楼答案

    你可以用三元组检查空值

    for(int i = 1; i < columnsNumber; i++) {
        String printMe = rs1.getString(i)
        System.out.printf(printMe == null ? "" : printMe + "\t"); 
    }
    

    在本例中,如果printMe(您的列值)为空,它只打印一个空字符串。我用空格代替了标签,但是你可以随意打印

  3. # 3 楼答案

    您可以在打印前进行检查:

    for(int i = 1; i < columnsNumber; i++) {
        String s = rs1.getString(i)
        if (s != null) { 
           System.out.printf(s + "    "); 
        }
    }
    System.out.println();