String 类
用来处理字符序列的类,存放于java.lang包中,java.lang包被默认引用,因此程序可以直接使用string类
string类为final类,不能被拓展和继承
string对象(字符串对象)
1.string常量也是对象,用双引号括起的字符序列
2.可以用string类声明对象并创建对象,例如:
String s = new String (“we are students”);
(两个相同内容的变量他们的引用和内存空间都是不同的)
用户无法输出string对象的引用: System.out.println(S); ×
也可以用已创建的string对象去创建另一个string对象,例如:
String tom = new String(S);
string类还有两个较常用的构造方法:
1.String(char a[ ] )用一个字符数组a创建一个string对象,例如:
char a【】={‘j’,‘a',’v‘,’a‘};
String s = new String(a) //等价于:String s = new String(“java”);
2.String(char a【】,int startindex,int count)提取字符数组a中的一部分字符创建一个string对象 ,参数startindex和count分别指定在a中提取字符的起始位置和截取的字符数 例如:
char a[ ] ={’零‘,’壹‘,’贰‘,’叁‘,’肆‘,’伍‘,’陆‘,’柒‘,’捌‘,’玖‘};
String s =new String(a,2,4); //等价于:String s =new String (“贰叁肆伍”);
3.引用string常量
string常量是对象,可以把string常量的引用赋值给一个string对象 例如:
String s1,s2;
s1=“你好”;
s2=“你好”; //具有相同的引用,
StringTokenizer类
1.该类有两个常用的构造方法
- StringTokenizer (String s):为String对象s构造一个分析器,使用默认分隔标记。
- StringTokenizer (String s,String delim):为String对象s构造一个分析器,参数delim的字符序列中的字符的任意排列被作为分隔标记。
- 用空间换取速度
-
StringTokenizer fenxi = new StringTokenizer("You are welcome");
-
StringTokenizer fenxi = new StringTokenizer("you#*are*##welcome","#*");
2.空格符、换行符、回车符、Tab符、进纸符为默认的分隔标记。
Scanner类
- Scanner对象可以调用方法useDelimiter(正则表达式):把与正则表达式匹配的字符序列作为分隔标记。
- 用速度换取空间
StringBuffer类
- 构造方法:StringBuffer();StringBuffer(int size); StringBuffer(String s)。
- String类的对象的字符序列的字符不能被修改、删除;而StringBuffer类的对象的实体的内存空间可以自动改变大小。
1.该类有两个常用的构造方法
- StringTokenizer (String s): //为String对象s构造一个分析器,使用默认分隔标记。
- StringTokenizer (String s,String delim): //为String对象s构造一个分析器,参数delim的字符序列中的字符的任意排列 被作为分隔标记。
- 用空间换取速度
-
StringTokenizer fenxi = new StringTokenizer("You are welcome");
-
StringTokenizer fenxi = new StringTokenizer("you#*are*##welcome","#*");
2.空格符、换行符、回车符、Tab符、进纸符为默认的分隔标记。
Scanner类
- 被修改、删除;而StringBuffer类的对象的实体的内存空间可以自动改变大小。