比如一个变量 Myv.get(i)中的值有“\n    ” 如何判断它的值是不是“\n    ”呢?

解决方案 »

  1.   

    完全匹配的话就用equal,如果不是严格匹配的话用正则表达式
      

  2.   

    完全匹配
    str.equals("\n    ");regex:str.matches("\\s+");
      

  3.   

    to:masse(当午)
    matches是怎么用啊
      

  4.   

    正则表达式
            String str = null;
            str = "   \n      \n\n\n  ";
            System.out.println(str.matches("\\s+")); // 这里返回true,因为都是空白
            str = "abc\n\n    \n  a";
            System.out.println(str.matches("\\s+")); // 返回false,因为str里面有a等其它非空白字符。
      

  5.   

    解决:用字符串的切割功能:substring方法(String)Myv.get(i)).substring(0,1)
      

  6.   

    再java中 == 和 != 对对象来说,比较的是是否是同一个引用。
    只有当对象是同一个引用时,才可以得到true的结果。 而你的这个,虽然字符相同,但不是来自同一个引用。所以,一般来比较对象是否相同的话,采用equal()方法。 单纯的运算符== 会出现错误