public static void main(String[] args) throws ParseException { String str = "hello"; str+=" world"; System.out.println(str); }String字符串与数组有一个共同点,就是它们被初始化后,长度是不变的,并且内容也不变。如果要改变它的值,就会产生一个新的字符串 实际上,String 是java.lang包下的一个类,按照标准的面向对象的语法,其格式应该为:
String stringName = new String("string content");但是由于String特别常用,所以Java提供了一种简化的语法。
String stringName = "string content";使用简化语法的另外一个原因是,按照标准的面向对象的语法,在内存使用上存在比较大的浪费。例如String str = new String(“abc”);实际上创建了两个String对象,一个是”abc”对象,存储在常量空间中,一个是使用new关键字为对象str申请的空间。
字符串操作
String对象有很多方法,可以方便的操作字符串。1) length() 方法
length() 返回字符串的长度,例如:public static void main(String[] args) throws ParseException { String str = "hello,您好"; str+=",world,世界,123"; System.out.println(str.length()); }输出结果:21 可见,无论是字母、数字,还是汉字,每个字符的长度都是1。
2) charAt() 方法
charAt() 方法的作用是按照索引值获得字符串中的指定字符。Java规定,字符串中第一个字符的索引值是0,第二个字符的索引值是1,依次类推。例如:String str = "123456789";System.out.println(str.charAt(0) + " " + str.charAt(5) + " " + str.charAt(8));输出结果: 1 6 9
3) contains() 方法
contains() 方法用来检测字符串是否包含某个子串,例如:String str = "helloworld";System.out.println(str.contains("hello"));输出结果:true
4) replace() 方法
字符串替换,用来替换字符串中所有指定的子串,例如:public static void main(String[] args) throws ParseException { String str = "hheello"; System.out.println(str.replace("h", "o")); }输出结果:ooeello 注意:replace() 方法不会改变原来的字符串,而是生成一个新的字符串。
5) split() 方法
以指定字符串作为分隔符,对当前字符串进行分割,分割的结果是一个数组,例如:public static void main(String[] args) throws ParseException { String str = "hheello"; String [] strArr=str.split("e"); System.out.println( Arrays.toString(strArr)); }运行结果:[hh, , llo] 以上仅仅列举了几个常用的String对象的方法,更多方法和详细解释请参考API文档。