2012-02-04 78 views
-2

我使用删除字符串[]中的空值?

String[] arr = originalString.split(","); 

这是存储真,假,真等根据用户挑选什么分裂。我怎么说只是删除错误的数组,并保留数组中的真实值?

+2

你可以做一个for-loop并检查所有的值。 – warbio 2012-02-04 13:30:10

回答

1
  • 使用现有的方法,遍历返回的数组,设置“假”字字符串null。这实际上并不会给你带来太多的收益,因为你必须线性查看数组,并查看每个元素,在处理响应时可以轻松完成这些操作。而且既然你不能减小数组的大小......你不能在这个意义上“删除”它们。如果你真的需要一个只包含一些响应的数组,你需要在这个循环中复制你想要的数组。

  • 从数组中创建List,使用其方法删除项目;该列表将缩小并仅包含您想要的内容。再次......在这里进行大量的线性遍历,但是最终会找到你正在寻找的结果。

  • 首先不要使用String.split()。如果你对'错误'的反应不感兴趣,可以通过Java的Matcher类使用正则表达式从你的原始字符串中只提取'真正'的响应。

  • 改变你的方法。如果这些是用户响应,请不要将它们存储在String中。创建一个Response对象,该对象存储用户输入以及他们正在响应的内容。将它们存储在两个List s中,一个用于“真实”响应,一个用于“虚假”响应。