2015-02-11 31 views
-2

这是我的代码。这是一个类,它传递一个字符串作为参数在这种情况下“苔藓25”的方法。我的问题是,为什么被注释掉的方法部分不能正常工作,即没有被分割,但未被注释掉的部分分裂得很好。我假设这是因为我的if语句没有被评估为true。.contains()方法的计算结果是什么?

我错过了什么?

类StringFormatter {

public void lineRead(String br) 
{ 


    /* String reader = br; 
    String delimiters = "\\s+"; 
    if(reader.contains(delimiters)) 
     { 
      String[] parts = reader.split(delimiters); 
      String part1 = parts[0]; 
      String part2 = parts[1]; 

      System.out.println(part1); 
      System.out.println(part2); 


     } 
    else 
    System.out.println(reader); 
    */ 



    String reader = br; 
    String delimiters = "\\s+"; 
    String[] parts = reader.split(delimiters); 
    String part1 = parts[0]; 
    String part2 = parts[1]; 

    System.out.println(part1); 
    System.out.println(part2); 

} 

}

回答

2

String.contains不使用正则表达式。

由于您的字符串不包含\后跟s后跟+,它将返回false。然后,由于它返回false,你的代码不会尝试拆分字符串。

+0

好吧如何检查字符串中的空格字符呢?我在想,\\意思是空白。 – Stevenfowler16 2015-02-11 02:52:22

+0

Andd解决了。我一直试图弄清楚这一点,并且在询问后我找到了答案。谢谢 – Stevenfowler16 2015-02-11 02:59:09

相关问题