2016-02-12 87 views
1

我创建表是这样的:有什么办法可以“隐藏”阵列中的空元素?

String[5] tab; 

,并希望用户填写的表格与一些字符串。 之前,该表有5 null s和我的问题是:

如何隐藏这些null从System.out.println(tab[x])

添加代码

public class Main { 
public static void main (String[] args){ 

    String[] tab = new String[5]; 

    System.out.println("showing tab: "); 
     for(int i=0; i<tab.length; i++){ 
      System.out.println(tab[i]); 
    } 
    } 
} 
+3

请告诉我们的代码。在阵列上使用'println''甚至不会显示内容而无需进一步工作。 – f1sh

+1

'Arrays.fill(tab,“”);' –

+0

或'String [5] tab = {“”,“”,“”,“”,“”};' –

回答

1

,如果你想用户填充它之前打印出来你可以这样做(长度为0)。

或者如果在用户填充字符串数组后,您打算“隐藏”它们?对于您可以这样做:

//Lets say your String array has this content after 
//user fills it: {"test1", "", "test2", "test4", "", null} 

for (int i = 0; i < tab.length; i++) { 
    if(!(tab[i] == null)){ 
     System.out.println(tab[i]); 
    }  
} 

它将打印的一切,但null

+1

谢谢,先生!像魅力一样工作! – dmat

+1

我接受和upvoted,但即时新手在这里,仍然需要15代表,所以我的投票可以改变公开比分。 – dmat

0

你只需要初始化数组。有几种方法。这里是一个:

String[] tab = new String[5]; 
Java.util.Arrays.fill(tab, ""); 
System.out.println("showing tab: "); 
    for(int i=0; i<tab.length; i++){ 
     System.out.println(tab[i]); 
} 

你应该知道,这样做的时候,你的String数组将有一个空字符串:

String[] tab = { "", "", "", "", "" }; 
+0

它甚至会编译?它会不会在[5]处给出错误?尝试在IDE中初始化它,看看会发生什么。我试过了,它给了我一个错误。 –

+0

是的,你不希望5 - 我盲从OP的问题复制。 –

相关问题