黑马程序员四、String 类

来源:互联网 发布:股权投资 知乎 编辑:程序博客网 时间:2024/06/05 20:27

---------------------- android培训java培训、期待与您交流! ----------------------

一、基础知识

String s1 = “abc”;      //s1是一个类类型变量,“abc”是一个对象。

                                   //字符串最大的特点:一旦被初始化就不可以被改变。

String s2 = new String(“abc”); 

System.out.println(s1==s2);    //false

System.out.println(s1.equles(s2));  //true ,   String类复写了Object类中equals方法。

                                                          //该方法用于判断字符串是否相同。

s1 和s2有什么区别?

      s1在内存中有一个对象。

      s2在内存中有两个对象。

二、常见的操作有哪些?

1.     获取。

    a)    字符串中的包含的字符数,也就是字符串的长度。

                    int length();获取长度。

    b)    根据位置获取位置上某个字符。

              charcharAt(int index)

    c)     根据字符获取该字符在字符串中位置。

                int indexOf(int ch):返回的是ch在字符串中第一次出现的位置。

                int indexOf(int ch,int fromIndex);从fromIndex指定位置开始,获取ch在字符串中出现的位置。

                int indexOf(String str):返回的是str在字符串中第一次出现的位置。

                int indexOf(String str,int fromIndex);从fromIndex指定位置开始,获取str在字符串中出现的位置。

2.     判断.

  a)   字符串中是否包含某一个子串。

              boolean contains(str);

              特殊之处:indexOf(str);可以索引str第一次出现位置,如果返回-1,表示该str不在字符串中存在。

              所以也可以对指定判断是否包含。

             if(str.indexOf(“aa”)!==-1)//而且该方法即可以判断,有可以获取出现的位置。

   b)   字符串是否有内容。

              boolean isEmpty();//原理就是判断长度是否为0.

   c)  字符串是否是以指定内容开头。

             boolean statsWith(str);

   d)  字符串是否是以指定内容结尾。

              boolean endsWith(str);

   e)   判断字符串内容是否相同,复写object类中的equals方法。

              boolean equals(str);

    f)    判断内容是否相同,并忽略大小写。

             boolean equalsIgnoreCase();

3.     转换。

     a)   将字符数组转换成字符串。

               构造函数:String(char[])

                      String(char[],offset,count);将字符数组中的一部分转换成字符串。

               静态方法:staticString copyValueOf(char[]);

                       staticString copyValueOf(char[],int offset,int count);

                      staticString ValueOf(char[]);

     b)   将字符串转成字符数组。

                 char[] toCharArray();

     c)   将字节数组转换成字符串。

                 String(byte[]);

               String(byte[],offset,count);将字节数组中的一部分转换成字符串。

    d)  将字符串转换成字节数组。

                byte[] getBytes();

    e)  将基本数据类型转换成字符串。

                static String alueOf(int);

              特殊,字符串和字节数组在转换过程中,是可以指定编码表的。

4.     替换

          String replace(char oldChar, char newChar)

            String replace(char oldChar, char newChar)

    例如,String s =”hello Java“;

        //如果要替换的字符不存在,返回的是原字符串。

         String s1=s.replace("a","n");   

          String s1=s.replace(”java”,”word”);

5.    切割

           String[] split(regex);

6.   子串,获取字符串中的一部分。

         String substring(begin);

          String substring(int begin, int end);

       例;String s =“abcdef”;

              s.substring(2);// cdef,从指定位置开始到结尾。

           //如果角标不存在,则出现越界异常。

              s.substring(2,4);//cd,包含头,不含尾。

7. 转换,去空格,比较。

       a)将字符串转化成大写或小写。

              StringtoUpperCase();

              StringtoLowerCase();

       b)将字符串两端的多个空格去除。

              Stringtrim();

       c)对两个字符串进行自然顺序的比较。

              intcompareTo(String);

       例,Strings1=”acc”;

              Strings2=”aaa”;

              s1.compareTo(s2);//结果为:2,比较大小,

 ---------------------- android培训java培训、期待与您交流! ----------------------

详细请查看:http://edu.csdn.net/heima