我的 .contains() 方法的计算结果是什么?
What does my .contains() method evaluate to?
这是我的代码。这是一个来自 class 的方法,在本例 "moss 25" 中将字符串作为参数传递。我的问题是为什么被注释掉的方法部分不起作用,即不拆分,但未被注释掉的部分拆分得很好。我假设这是因为我的 if 语句未评估为真。
我错过了什么?
class 字符串格式化程序
{
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);
}
}
String.contains
不使用正则表达式。
由于您的字符串不包含 \
后跟 s
后跟 +
,因此它 returns 为假。然后,由于它返回 false,您的代码不会尝试拆分字符串。
这是我的代码。这是一个来自 class 的方法,在本例 "moss 25" 中将字符串作为参数传递。我的问题是为什么被注释掉的方法部分不起作用,即不拆分,但未被注释掉的部分拆分得很好。我假设这是因为我的 if 语句未评估为真。
我错过了什么?
class 字符串格式化程序 {
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);
}
}
String.contains
不使用正则表达式。
由于您的字符串不包含 \
后跟 s
后跟 +
,因此它 returns 为假。然后,由于它返回 false,您的代码不会尝试拆分字符串。