Java基础学习(三)

来源:互联网 发布:js图片旋转动画 编辑:程序博客网 时间:2024/05/16 09:42

可以证明,字符串操作是计算机程序设计中最常见的行为。

字符串

字符型包括字符常量和字符变量两大类,字符常量是用单引号括起来的,如‘a’。
Java中的转义字符是‘\’.
字符变量:char ch=’s’;//默认初始值为\u0000;
Java中,把字符串作为对象来处理,Java语言提供的java.lang中封装了类String和StringBuffer,都可以用来表示一个字符串(分别处理不变字符串和可变字符串)。


字符串常量

一个字符串常量是双引号之间的字符序列,如果双引号之间没有任何字符,那么该字符创为空串,Java允许在字符串中出现转义字符。

Java允许直接使用加号连接两个字符串。

字符串的声明及初始化

对于字符串变量,在使用之前要显示声明,并且进行初始化。

>   String a;>   StringBuffer b;>   //创建一个空字符串>   String c=new String();>   //直接用字符串常量来初始化一个字符串>   String d="hello";> 

字符串处理的类

String类是字符串常量类,该类对象在建立后不能修改。Java编译器保证每个字符串常量都是String类对象。

String类的基本方法

1.构造函数

String();                           //生成一个空串;String(String value);               //用已知串生成一个串对象String(char []value);               //用字符数组生成一个串对象String(char value[],int offset,int count); //用字符数组value的offset位置开始的count个字符,建立一个字符串对象,之后并不影响原来的字符数组String(char value[],int hibyte,int offset,int count);//基本功能同上

2.字符串类的访问方法

字符串的访问即字符串的引用,它包括得到字符串的长度,得到指定位置的字符或字串,以及得到某个字符或者字串在字符串中的位置等。

length();                                                        //返回字符串长度toLowerCase();                                                   //转换为小写串toUpperCase();                                                   //转换为大写串charAt(int index);                                               //返回字符串的第index个字符substring(int neginindex);                     //返回从beginindex位置(包括该位置)开始到结尾的所有字符substring(int beginindex,int endindex);        //返回从beginindex位置(包括)开始到endindex(不包括)的所有字符compareTo(String anotherString);               //字符串比较,返回值为两者差regionMatches(int toffset,String other,int ooffset,int len);                                                  //比较本串从toffset开始的len个字符和other串从ooffset开始的len个字符是否一致。startWith(String prefix);                      //比较字符串是否以prefix开始endWith(String suffix);                        //比较字符串以suffix结束indexOf(int ch);                               //返回某个字符或字符串在本字符串中第一次出现的位置lastIndexOf();                                 //返回某个字符或字符串在本字符串中最后一次出现的位置replace(char oldChar,char newChar);            //将字符串中oldChar字符替换成newChar字符;valueOf(object obj);                           //将某个对象的实例转换成字符串concat(String str);                            //将字符串str连接到本串的最后

3.字符串和字符数组

将字符串保存到字符数组中:

getChars(int start,int end,char c[],int offset);
//将当前字符串中的一部分字符复制到参数c指定的数组中,将字符中从位置start到end-1位置的字符复制到数组c中,并从数组c的offset处开始存放。

toCharArry();

调用该方法可以初始化一个字符数组,该数组的长度与字符串的长度相等,并将字符串对象的全部字符复制到该数组中。
如:String s=“哈哈哈”;
char a[]=s.toCharArray();

StringBuffer类

StringBuffer类是字符串缓冲区,不仅可以接受修改,还可以读入整个文件。

StringBuffer类的基本方法

1.StingBuffer类对象初始化

StringBuffer类的对象只能用初始化函数进行初始化,构造函数如下:

StringBuffer()                    //建立空的字符串对象StringBuffer(int length)          //建立长度为length的字符串对象StringBuffer(String)              //建立一个初始值为String的字符串对象

2.StringBuffer类的访问方法

length()——返回字符串长度setLength(int newlength)——重新设定字符串的长度,新串为旧串的截余charAt(int index)——返回指定位置的字符setCharAt(int index,char ch)——重设指定位置的字符append(Object obj)——将指定对象转换为字符串,添加到原串尾insert(int offset,Object obj)——将指定对象转换为字符串,然后插入到从offset开始的位置toString()——将字符串转换成String对象capacity()——返回当前StringBuffer类对象分配的字符空间的数量getChars(int srcBegin,int srcEnd,char dst[],int dstBegin)——将字符串中从srcBegin到srcEnd的字符拷贝到数组dst[]中开始位置为dstBegin中。

3.StringTokenizer

有时候分析字符串并将字符串分解成可被独立使用的单词,这些单词叫做语言符号。要实现以上的要求可以使用java.util包中的StringTokenizer类。该类只要用途是将字符串以界定符为界,分析为一个个的token,定界符可以自己指定。
例:
StringTokenlizer fenxi=new StringTokenizer(“We are student”);
StringTokenlizer fenxi=new StringTokenizer(“We,are;student”,“,:”);

通常用while循环来逐个获取语言符号,为了控制循环,我们可以使用StringTokenizer类中的hasMoreTokens()方法,只要字符串中还有语言符号,该方法就 返回 true,否则返回false。

另外我们还可以调用countTokens()方法得到字符串一共有多少个语言符号。

StringTokenizer 类三种构造方法:

①public StringTokenizer(String str)

为指定字符串构造一个string tokenizer。tokenizer使用默认的分集”\t\n\r\f”。
即:空白字符、制表符、换行符、回车符和换页符。分隔符字符本身不作为标记。
参数:str - 要解析的字符串。 抛出:NullPointerException-如果str为 null。

②public StringTokenizer(String str,String delim)

为指定字符串构造一个string tokenizer。delim参数中的字符都是分隔标记的分隔符。分隔符字符本身不作为标记。
注意:如果delim为null,则此构造方法不抛出异常。但是尝试对得到StringTokenizer调用其它方法则可能抛出NullPointerException。
参数:str - 要解析的字符串;delim-分隔符。

③public StringTokenizer(String str,String delim,boolean returnDelims)

为指定字符串构造一个string tokenizer。delim参数中的所有字符都是分隔标记的分隔符。如果returnDelims标志为true,则分隔符字符也作为标记返回。每个分隔符都作为一个长度为1的字符串返回。如果标志为false,则跳过分隔符,只是用作标记之间的分隔符。
如果delim为null,则此构造方法不抛出异常。但是,尝试对得到的StringTokenizer调用其它方法则可能抛出NullPointerException。
参数:str -要解析的字符串;delim-分隔符。
returnDelims-指示是否将分隔符作为标记返回的标志.
抛出:NullPointerException-如果 str 为 null。

0 0
原创粉丝点击