0

我有以下内容:

InputStream inputFromServer
TextArea t
String display
String validation

字符串显示保存来自输入流的数据,然后将其添加到文本区域。我想检查是否显示包含验证,然后不要将其写入文本区域。这是我目前拥有的代码:

while ((inputFromServer.read())!=-1)
{
    display = display + ((char)inputFromServer.read());
    t.setText(s);
}

我想要类似的东西:

while ((inputFromServer.read())!=-1)
{
    display = display + ((char)inputFromServer.read());
    if display contains validation {
        THEN DONT WRITE IT TO THE TEXT AREA
    } 
    else{
        t.setText(s);
    }
}

如果方法完全错误,那么有人可以指导我正确的方向吗?谢谢

4

2 回答 2

0

你可以这样做:

while ((inputFromServer.read())!=-1)
{
    display = display + ((char)inputFromServer.read());
    if (!display.contains(VALIDATION_STRING) {
        t.setText(s);
    } 
}
于 2012-04-30T00:32:33.790 回答
0

好的,因为验证String可能未初始化,您可以检查一下

display += ((char)inputFroMServer.read());
if(validationString.equals("") || !display.contains(validationString)) {
      t.setText(display);
}

或者就像我在评论中说的那样,你可以这样做:

!display.toLowerCase().contains(validationString.toLowerCase()) 

如果你不关心大小写

此外,如果您要多次编辑显示字符串,您应该考虑使用StringBuilder

于 2012-04-30T00:37:34.740 回答