本回答由广州市汇泉翻译服务有限公司_提供
本回答由广州市汇泉翻译服务有限公司_提供
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
1) 使用引号包含文本的方式创建String对象
java虚拟机会在字符串池中查找该对象是否已经存在。如果有,则不再创建新的对象,直接返回已存在对象的引用;如果没有,则先创建这个对象,然后把它加入到字符串池中,再将它的引用返回。
对于所有包含new方式新建对象的表达式,新建的对象都不会加入字符串池中。
1)java的split方法实则是调用了重载方法,默认方法参数limit传0。当limit==0时,只有存在的最后的空格会被去掉,在中间和前面的空格都不会被去掉。
2)当limit > 0 时,limit等于字符串要被分割的份数。如果limit > 最大分割份数,字符串只会按照最大的分割数分割;参数limit是整型,不能使用小数。
3)当limit < 0 时,不会去掉任何分割后的字符。
在java中字符串属于对象,java提供了String类来创建和操作字符串。String类是不可变类,一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可改变的。
为了节省内存空间,应对经常性的字符串相关操作,引入两个新的类StringBuffer类与StringBuilder类来对变化的字符串进行处理。
StringBuilder类不是线程安全的 (不能同步访问),但相较于StringBuffer有速度优势。StringBuffer类效率低,但线程安全。两个类的方法都相同。
两个特殊字符'^'和'$',分别指出一个字符串的开始和结束。例:
'*', '+'和'?'这三个符号,分别表示“零个或若干个”,“一个或若干个”还有“零个或一个”。例:
"ab*":表示一个字符串有一个a后面跟着零个或若干个b。("a", "ab", "abbb",……);
"ab+":表示一个字符串有一个a后面跟着至少一个b或者更多;
"ab?":表示一个字符串有一个a后面跟着零个或者一个b;
{ }用大括号表示可以重复次数的范围,必须指定范围的下限。例:
"ab{2}":表示一个字符串有一个a跟着2个b("abb");
"ab{2,}":表示一个字符串有一个a跟着至少2个b;
'.'可以替代任何字符。例:
"a.[0-9]":表示一个字符串有一个"a"后面跟着一个任意字符和一个数字;
'^'放在方括号里的第一位,表示不希望出现的字符。例:
"%[^a-zA-Z]%"表示两个百分号中不应该出现字母;
'\' 将下一字符标记为特殊字符、文本、反向引用或八进制转义符。
例如,“n”匹配字符“n”。“\n”匹配换行符。序列“\\”匹配“\”,“\(”匹配“(”。
'\d' 匹配一个数字字符。等价于[0-9]。
'\n' 匹配一个换行符。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。