String类的使用
一. 构造方法
值得注意的是:
① 没有将八大类型(无论是基本类型还是包装类型)作为形参的方法,如String(int) 或者String(Double),这提醒我们不要犯像下面的错误:
如果真的想要将八大类型转换为String,可以使用String的valueOf()方法:
随便点进去看一下:
即调用相应包装类的toString()的方法,并且因为方法都是static,所以可以直接通过String调用,e.g.:
由上面的提示可知,对于各个包装类,可以使用对应的toString()转换为String类型,e.g.:
那么,之前的错误例子就可以改为:
一个有趣的延伸问题是,几大包装类以String作为参数和基本类型作为参数的构造方法是有区别的,这里只给一个有趣的“现象”:
这里就不展开了。
② char[]和String之间的转换很方便,String到char[]——String.toCharArray,char[]到String——String(char[])0
二. substring()方法
substring()有两个方法:
① 先看 substring(int beginIndex):
即若字符串长度为0——“”,则返回本身,若长度大于0,则
这个API是之前看到过的:
即截取原String的所有值,但是注意,这里是new String,故若原来为''',则现在substring的结果就是本身,若大于0,则substring的结果是新的字符串,==号的结果为fasle,equals的结果为true。
② 再看substring(int beginIndex, int endIndex)
最要注意的是,substring(int beginIndex, int endIndex)是截取原字符串下标从beginIndex到endIndex-1(String.charAt()的值)对应的字符串。并不是从beginIndex到endIndex!
三. 其他有用的api
indexOf(String str) —— str第一次出现的位置,若没有则返回-1
lastIndexOf(String str) —— str第一次出现的位置,若没有则返回-1
split(String str)
trim()