【发布时间】:2014-05-29 01:19:04
【问题描述】:
我需要一些帮助来解决这个问题 - Java 的 startsWith() 方法似乎不起作用。
有人知道为什么会这样吗?
方法:
public boolean check(File f) {
boolean ans = (f.getName().startsWith(this.pre));
System.out.println(f.getName()+" "+this.pre);
System.out.println(ans);
}
我得到的输出是:
file5.b file
false
Same_a.txt file
false
same_name_a.txt file
false
same_name_c.txt file
false
看起来它总是返回 false。
编辑: 你是对的,我误解了一些事情......感谢和抱歉给您带来的不便。
【问题讨论】:
-
pre的值是多少? -
尝试在字符串输出周围添加单引号。我敢打赌,值周围有额外的空格。
-
当我去编辑问题文本时,我注意到在您的输出行中,当您打印
this.pre时,“文件”一词后面总是有一个空格。你确定它的值是"file"而不是"file "? -
另外,要养成处理这些问题的习惯,并且要养成这样一种心态,即 99.99% 以上的错误将出现在您的代码中,而不是 Java 标准库中。将问题表述为标准库中的错误几乎是一种必然会被否决的方式。
-
缺少诊断问题所需的最少信息。
标签: java startswith