通过一些代码进行调试时,我发现验证的特定部分是使用.startsWith()
String类上的方法来检查String是否以空白字符开头
考虑以下内容:
public static void main(String args[])
{
String s = "Hello";
if (s.startsWith(""))
{
System.out.println("It does");
}
}
打印出来 It does
我的问题是,为什么字符串以空白字符开头?我以为字符串实际上是字符数组,但是在这种情况下,我本以为第一个字符是H
谁能解释一下?
“”是一个空字符串,不包含任何字符。没有“空字符”,除非您是指空格或空字符,都不是空字符串。
您可以将字符串视为以无数个空字符串开头,就像您可以将数字视为以无数个前导零开头一样,而无需更改其含义。
1 = ...00001
"foo" = ... + "" + "" + "" + "foo"
字符串也以无数个空字符串结尾(就像带零的十进制数字一样):
1 = 001.000000...
"foo" = "foo" + "" + "" + "" + ...
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句