Java之路--Javase篇 API (1)

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

                              String 

1. 特点:一旦初始化不再能被改变。

    public class StringF {

public static void main(String[] args) {

        String s = "abc";

        String s1 = "abc";

        String s2 = new String("abc");

        System.out.println("s == s1:"+(s == s1));//[true]指向同一个对象

        System.out.println("s == s2:"+(s == s2));//[false]s、s2地址不同,比对是引用的地址

       System.out.println("s.equals(s1):"+s.equals(s1));//[true]String 重写了object类中的equals方法,不再比对两个引用的地址,而是判断引用中的具体内容.

}

}

 S1和S2的异同:异---二者地址值不一样;s1中只有一个对象,而在s2中存在2个对象。

                 同---引用的对象的内容一致。

2. 获取功能

获取字符串的长度:int length()

返回指定位置(index)处的字符:char charAt(index)

通过字符串获取到索引位:

正向索引:int  indexOf(int ch) ---通过指定的字符获取该字符在字符串中第一次出现  的位置。如果不存在返回:-1。由此可以判断一个字符是否在字符串中存在。

int indexOf(int ch,int fromIndex)---从指定的索引(fromIndex)处开始查找ch第一次出现的位置。

int indexOf(String str)—索引字符串在指定字符串中出现的第一次位置。

int indexOf(String str,int fromIndex)--- 从指定的索引(fromIndex)处开始查找str第一次出现的位置。

反向索引:

int  lastIndexOf(int ch)

int  lastIndexOf(int ch,int fromIndex)

int  lastIndexOf(String str)

int  lastIndexOf(String str,int fromIndex)

获取子串:

String substring(int beginIndex, int endIndex):包含头,不包含尾,即不包含endIndex指代的字符  例如: String substring(2,2):获取到的是空串,如同“”。String substring(int beginIndex)

3. 判断功能

@两个字符串是否相同:boolean equals(String S)

@调用此方法的字符串是否以指定的字符串开头:boolean startsWhith(String S)

@调用此方法的字符串是否以指定的字符串结尾:boolean endsWhith(String S)

@字符串中是否包含指定的字符串:boolean contains(String S)

@字符串中是否有字符:boolean isEmpty():原理上就是判断其长度是否为0

4. 转换功能

@将字符串转换成字符数组:char[] toCharArray()

@将字符串转换成字节数组:byte[] getBytes()【涉及到编码转换】

@将字符串转换成字符串数组,也就是切割:String[] split(String regex)

注意:此方法中的regex是正则表达式,不可以用点( .)等这样在正则表达式中有特殊意义的特殊符号作为分割标记。如果使用,必须将其转义。另外,可以使用空格(“ ”)去分割。注意空格的个数务必于原字符串中空格相等。

   例子:

String s3 = "zhangsan,wangwu,lisi";//

    String[] arr = s3.split(",");

  for(int x=0;x <arr.length;x++)

    {

System.out.println("arr["+x+"]="+arr[x]);

    }

@将字符数组转换成字符串:

构造函数:String(char[] value)

构造函数:String(char[] value,int offset,int count) 将char数组中的一部分转换称字符串。其中int offset表示转的起始位置,而 int count表示从起始位置开始将多少个字符转换称字符串。

静态方法:Static String copyVslueOf(char[] data)

          Static String copyVslueOf(char[] data,int offset,int count)

@将字节数组转换成字符串,用于解码:

   构造函数:String(byte[] value)

   构造函数:String(byte[] value, int offset,int count):将数组中的一部分转成字符串。

@将基本数据类型转成字符串:static String valueOf(boolen b)

  例子:

      String s= String.valueOf(4);//将4转换成字符串

      System.out.println(s+4);//结果将是44,注意是字符串44而不是数值24

      System.out.println(44+” ”);//基本数据类型在跟字符串连接时自动都将基本//型转成字符串

@将String变成大写,或者小写:

   String toUpperCase();

   String toLowerCase();

例子

        String s = "Qq";

    s = "yuzhou";//此处为何还可以赋值?这里改变的s的引用

s = new String("shenma");

  System.out.println(s.toUpperCase());

  System.out.println(s);//此处由于String的一经初始化就不可更改的特性//而此处仍然是shenma

5. 替换功能

@将字符串中的字符修改成指定的字符:String replace(OldChar, newChar)

@将字符串中的字符串修改成指定的字符串:String replace(String1,String2)

6. 去除字符串两端的空格:String trim()。

---------------------- android培训、 java培训、期待与您交流! ---------------------- 详细请查看: http://edu.csdn.net/heima

你可能感兴趣的:(java,String,职场,休闲)