首页 > 其他 > 详细

String(一)

时间:2019-07-06 21:20:00      阅读:109      评论:0      收藏:0      [点我收藏+]

String是Java.lang包下的final类,其值是不可以改变的。String类实现了java.io.Serializable,Comparable<String>,CharSequence 这三个接口。

java.io.Serializable 接口是 序列化接口,实现此接口的类,可以序列化和反序列化此类对象。

Comparable<String> 接口是 排序接口,实现此接口的类,可以对对象的列表进行排序。

CharSequence 此接口为实现接口的类提供了不同种类的只读访问方法。

在String类中有这几个成员变量:private final char value[];用于字符存储,private int hash;用于字符串的哈希码存储,private static final ObjectStreamField[] serialPersistentFields =new ObjectStreamField[0];用于对象的序列化与反序列化。

在String类中有很多的构造器:

public String() 初始化String对象,使其值为空字符序列。

public String(String original)初始化String对象,使其值为original的值,并且存储original的哈希码。

public String(char value[]) 初始化String对象,使其值为char数组中当前参数的值。改变数组,字符串的值不会改变。

public String(char value[], int offset, int count) 初始化String对象,使其值为数组中以offset为下标的值开始,长度为count的参数的值。

public String(int[] codePoints, int offset, int count) 初始化String对象,使其值为int数组中以offset为下标的只开始,长度为count的参数转变成字符后的值。

public String(StringBuffer buffer) 初始化String对象,使其值为buffer的值,方法中带synchronized关键字。

public String(StringBuilder builder) 初始化String对象,使其值为builder的值。

String(char[] value, boolean share) 只有lang包内可以调用的构造器。

String字面量:

对String类型变量直接赋值时,值直接存进字符串常量池,在常量池中相同的值有且只有一个,以什么形式对常量池中的值进行访问值,都是一个对象。

String类中常用的方法:

判断当前字符串是否符合某种条件:

public boolean isEmpty(),是否为空,空返回true。

public boolean startsWith(String S),当前字符串是否以字符串S为前缀开始。

public boolean endsWith(String S),当前字符串是否以字符串S为后缀结束。

public boolean contains(String S),当前字符串中是否包含字符串S。

获得新的字符串:

public String toUpperCase(),返回一个全部大写的字符串。

public String toLowerCase(),返回一个全部小写的字符串。

public String substring(int begin),返回一个从当前字符串下标begin开始的新字符串。

public String substring(int begin,int end),返回一个从当前字符串下标begin开始,到当前字符串长度为end结束的新字符串。

public String trim(),返回一个忽略当前字符串前部空白和后部空白的新字符串。

public String replace(char oldChar,char newChar),返回一个将当前字符串中的所有字符oldChar替换成字符newChar的新字符串。

public String concat(String S),返回一个当前字符串+S的新字符串。

public static valueOf(),将参数转换成字符串。

当前字符串返回某个下标值:

public int indexOf(char C),返回当前字符串中字符C第一次出现的下标值。

public int indexOf(char C,int i),返回当前字符串中,从下标I开始字符C第一次出现的下标值。

public int indexOf(String S),返回当前字符串中字符串S第一次出现的下标值。

public int indexOf(String S,int i),返回当前字符串中,从下标I开始字符串S第一次出现的下标值。

public int lastIndexOf(char C),返回当前字符串中字符C最后一次出现的下标值。

public int lastindexOf(char C,int i),返回当前字符串中,从下标I开始字符C最后一次出现的下标值。

public int lastIndexOf(String S),返回当前字符串中字符串S最后一次出现的下标值。

public int lastIndexOf(String S,int i),返回当前字符串中,从下标I开始字符串S最后一次出现的下标值。

对字符串进行有返回值操作:

public int length(),返回字符串长度。

public char charAt(int index),返回对应下标位置上的一个字符,第一位从0开始。

public int codePointAt(int index),返回对对应下标位置上字符的某种规则下的int类型。(Unicode代码点,我现在不是很理解这是个什么东西)

public String[] split(String S),返回一个根据字符串S拆分成字符串数组。

对字符串进行无返回值操作:

public void intern(),将当前字符串放入字符串常量池中。

 

String(一)

原文:https://www.cnblogs.com/xiaosuye/p/11143342.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!