字符串在Java编程中有着广泛的应用,Java平台中提供了String对象来创建和操作字符串。
创建字符串
最直接的创建字符串的方法如下所示:
String greeting = "Hello world!";
除此之外,也可以按照一般对象初始化方式通过构造函数创建字符串。
char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
String helloString = new String(helloArray);
注意:String对象是不可更改的,一旦String对象被创建,就无法更改里面的字符串的值。String对象中一些成员函数看起来会更改字符串的值,实际上只是创建了包含新的字符串值的String对象而已。
获取字符串长度
可以通过对象的length()成员函数获取字符串的长度,如下所示:
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
该代码执行后,len的值为17:
连接字符串
String对象提供了concat方法实现对两个字符串的连接:
string1.concat(string2);
该方法返回了一个包含在string1后面添加了string2的新字符串。
此外,还可以通过"+"操作符,实现更加直观的字符串连接。如:
"Hello," + " world" + "!"
的结果为:
"Hello, world!"
字符串和数字的转化
程序中可能经常需要在字符串和数字之间互相转化,这种转化可以通过数字类型包装类( Byte, Integer, Double, Float, Long, 及 Short)进行。
字符串转化为数字:
float f = Float.valueOf("3.2");
数字转化为字符串:
double d = 858.48;
String s = Double.toString(d);
字符串基本操作
通过索引获取字符串中的字符:charAt()
String anotherPalindrome = "Niagara. O roar again!";
char aChar = anotherPalindrome.charAt(9);
在字符串中搜索字符或子字符串:substring()
String substring(int beginIndex, int endIndex)
String substring(int beginIndex)
在字符串中查找子串:
子串的查找主要有两个函数
int indexOf(...);
int lastIndexOf(...);
这俩个函数有多种重载形式,使用非常灵活,这里就不一一介绍了。
在字符串中替换子串:
String replace(char oldChar, char newChar)
同查找函数一样,这个函数也有较多的形式,具体请参看Api文档。