Class String 方法学习

来源:互联网 发布:msg用什么软件打开 编辑:程序博客网 时间:2024/06/15 17:33

构造器

String()

String(byte[] bytes)

String(byte[] bytes, Charset charset)

String(byte[] ascii, int hibyte)

String(byte[] bytes, int offset, int length)

String(byte[] bytes, int offset, int length, Charset charset)

String(byte[] ascii, int hibyte, int offse, int count)

String(byte[] bytes, int offset, int length, String charsetName)

String(byte[] bytes, String charsetName)

String(char[] value)

String(char[] value, int offset, int count)

String(int[] codePoints, int offset, int count)

String(String original)

String(StringBuffer buffer)

String(StringBuilder builder)

方法

char charAt(int index)

返回这个字符串的指定索引处的char值。第一个char值的索引为0.

    System.out.println(str.charAt(17));

int codePiontAt(int index)

返回指定索引处的字符(Unicode代码点)。该索引引用char值(Unicode代码单元),其范围从 0 到 length() - 1.

    String str = "JAVA";    int retval = str.codePointAt(1);

int codePointBefore(int index)

返回指定索引处前一位的字符(Unicode代码点)。该索引引用char值(Unicode代码单元),其范围从 0 到 length() - 1.

    String str = "JAVA";    int retval = str.codePointBefore(1);

int codePointCount(int beginIndex, int endIndex)

在此字符串指定的文本范围,方法返回数字的Unicode代码点。文本范围始于指定的beginIndex,并延伸到索引endIndex - 1的char。因此,文本范围的长度(以字符为单位)是endIndex-beginIndex.

java
String str = "JAVA programming language";
int retval = str.codePointCount(1, 8);

int compareTo(String anotherString)

方法比较两个字符串的字典。比较是基于字符串中的每个字符的Unicode值。此String对象表示的字符序列的参数字符串表示的字符序列进行比较字典.

其结果是负的整数,如果此String对象字典前面的参数字符串
其结果是一个正整数,如果此String对象字典如下的参数字符串
结果是零,如果两个字符串相等,CompareTo返回0时,equal(Object)方法将返回true。

在结果中,取字典中Unicode值相差最大的两个字符的差值。
public class FirstJava {    public static void main(String[] args) {        String str1 = new String("akke");        String str2 = new String("akkd");        String str3 = new String("akkf");        String str4 = new String("akke");        System.out.println(str1.compareTo(str2));        System.out.println(str1.compareTo(str3));        System.out.println(str1.compareTo(str4));    }}

int compareToIgnoreCase(String str)

比较两个字符串,忽略大小写

String concat(String str)

连接指定的字符串到该字符串的尾部

public class FirstJava {    public static void main(String[] args) {        String str1 = new String("akke");        String str4 = new String("akke");        System.out.println(str1.concat(str4));    }}

boolean contains(CharSequence s)

方法返回true,当且仅当此字符串包含指定的char值序列

public class FirstJava {    public static void main(String[] args) {        String str1 = new String("akke");        String str4 = new String("akke");        System.out.println(str1.contains(str4));    }}

booean contentEquals(CharSequence cs)

boolean contentEquals(StringBuffer sb)

比较当前字符串与指定的char值序列

public class FirstJava {    public static void main(String[] args) {        String str1 = new String("akke");        String str4 = new String("akke");        System.out.println(str1.contentEquals(str4));    }}

static String valueOf(char[] data)

static String copyValueof(char[] data)

返回一个字符串,它表示的字符序列中指定数组

public class FirstJava {    public static void main(String[] args) {        char[] charArr = { 'J', 'A', 'V', 'A' };        String str = String.copyValueOf(charArr);        System.out.println(str);    }}

static String valueOf(char[], int, int)

static String copyValueOf(char[] data, int offset, int count)

方法返回一个字符串,它表示的字符序列中指定数组

public class FirstJava {    public static void main(String[] args) {        char[] charArr = { 'C', 'O', 'M', 'P', 'I', 'L', 'E', ' ',                'O', 'N', 'L', 'I', 'N', 'E' };        String str = String.copyValueOf(charArr, 8, 6 );        System.out.println(str);    }}

boolean endsWith(String suffix)

返回一个true,如果参数表示的字符序列是由该对象表示的字符序列的后缀,否则返回false

public class FirstJava {    public static void main(String[] args) {        String str = "www.baidu.com";        String endstr1 = ".com";        String endstr2 = ".org";        boolean retval1 = str.endsWith(endstr1);        boolean retval2 = str.endsWith(endstr2);        System.out.println("ends with " + endstr1 + " ? " + retval1);        System.out.println("ends with " + endstr2 + " ? " + retval2);    }}

boolean equals(Object anObject)

将该字符串与指定的对象相比较

public class FirstJava {    public static void main(String[] args) {        String str1 = "java";        String str2 = "java";        String str3 = "JAVA";        String str4 = new String("java");        String str5 = new String("JAVA");        System.out.println(str1.equals(str2));        System.out.println(str1==str2);        System.out.println(str1.equals(str3));        System.out.println(str1==str3);        System.out.println(str1.equals(str4));        System.out.println(str1==str4);        System.out.println(str1.equals(str5));        System.out.println(str1==str5);    }}truetruefalsefalsetruefalsefalsefalse

boolean equalsIgnoreCase(String anotherString)

比较字符串,忽略大小写

public class FirstJava {    public static void main(String[] args) {        String str1 = "java";        String str2 = "java";        String str3 = "JAVA";        String str4 = new String("java");        String str5 = new String("JAVA");        System.out.println(str1.equalsIgnoreCase(str2));        System.out.println(str1==str2);        System.out.println(str1.equalsIgnoreCase(str3));        System.out.println(str1==str3);        System.out.println(str1.equalsIgnoreCase(str4));        System.out.println(str1==str4);        System.out.println(str1.equalsIgnoreCase(str5));        System.out.println(str1==str5);    }}truetruetruefalsetruefalsetruefalse

static String format(Locale l, String format, Object… args)

使用指定的语言环境、格式字符串和参数返回一个格式化字符串。

static String format(String format, Object… args)

使用指定的格式字符串和参数返回一个格式化字符串。

byte[] getBytes()

编码字符串到一个使用平台的默认字符集的字节序列,并将结果存储到一个新的字节数组

public class FirstJava {    public static void main(String[] args) {        String str1 = "tutorials point";        byte[] val = str1.getBytes();        String str2 = new String(val);        System.out.println("String '" + str2 + "' is equal to str1");    }}

byte[] getByte(Charset charset)

编码字符串转换成一个使用给定字符集的字节序列,并将结果存储到一个新的字节数组
返回的是对应字节序列的对应字节 如 a “ascii” –> 97

public class FirstJava {    public static void main(String[] args) {        try {            String str1 = "admin";            System.out.println("string1 = " + str1);            // copy the contents of the String to a byte array            byte[] arr = str1.getBytes("ASCII /*UTF8、GBK、BIG5...*/");            String str2 = new String(arr);            // print the contents of the byte array            System.out.println("new string = " + str2);        }        catch(Exception e) {            System.out.print(e.toString());        }    }}

byte[] getBytes(String charsetName)

编码字符串转换成使用指定的字符集的字节序列,并将结果存储到一个新的字节数组
返回的是对应字节序列的字节序列 如:a “ascii” –> 97

public class FirstJava {    public static void main(String[] args) throws Exception {        // string with numbers and some special characters        String str = "你好啊";        // byte array with charset        byte bval[] = str.getBytes("UTF8");        // prints the byte array        for (int i = 0; i < bval.length; i++) {            System.out.println(bval[i]);        }    }}

void getChars(int srcBegin, int srcEnd, char[] dst, int detBegin)

从该字符串向另一字符数组的指定位置复制指定长度的字符

public class FirstJava {    public static void main(String[] args){        String str1 = "abcdefghijklmnopqrstuvwxyz";        char[] c1 = new char[30];        str1.getChars(12,26,c1,0);        System.out.print("Value of character array : ");        System.out.println(c1);    }}

int hashCode()

返回该字符串的hashcode

public class FirstJava {    public static void main(String[] args){        String str1 = "abcdefghijklmnopqrstuvwxyz";        String str2 = new String("abcdefghijklmnopqrstuvwxyz");        int hashcode1 = str1.hashCode();        int hashcode2 = str2.hashCode();        System.out.print("Hashcod is : ");        System.out.println(hashcode1);        System.out.println(hashcode2);    }}

int indexOf(int ch)

返回所指字符在此字符串中第一次出现的位置,未出现返回-1

public class FirstJava {    public static void main(String[] args) {        String str = "This is Java";        // returns the index of occurrence of character s        System.out.println("index of letter 's' = "                + str.indexOf('s'));        // returns -1 as character e is not in the string        System.out.println("index of letter 'e' = "                + str.indexOf('e'));    }}

int indexOf(int ch,int fromIndex)

自字符串的指定位置起,返回所指字符在此字符串中第一次出现的位置,未出现返回-1.
返回的位置是原字符串从第一个字符算起的位置。

public class FirstJava {    public static void main(String[] args) {        String str = "This is Java";        // returns the index of occurrence of character s        System.out.println("index of letter 's' = "                + str.indexOf('s',4));        // returns -1 as character e is not in the string        System.out.println("index of letter 'e' = "                + str.indexOf('e'));    }}//index of letter 's' = 6//index of letter 'e' = -1

int indexOf(String str)

public class FirstJava {    public static void main(String[] args) {        String str = "This is Java";        // returns the index of occurrence of character s        System.out.println("index of letter 's' = " + str.indexOf("is"));        // returns -1 as character e is not in the string        System.out.println("index of letter 'avav' = " + str.indexOf("avav"));        }}//index of letter 's' = 2//index of letter 'avav' = -1

int index(String str, int fromIndex)

public class FirstJava {    public static void main(String[] args) {        String str = "This is Java";        // returns the index of occurrence of character s        System.out.println("index of letter 's' = " + str.indexOf("is",2));        // returns -1 as character e is not in the string        System.out.println("index of letter 'avav' = " + str.indexOf("avav",2));        }}//index of letter 's' = 2//index of letter 'avav' = -1
String intern()

http://blog.csdn.net/seu_calvin/article/details/52291082
http://bbs.csdn.net/topics/190153906

intern() 方法返回字符串对象的规范化表示形式。

它遵循以下规则:对于任意两个字符串 s 和 t,当且仅当 s.equals(t) 为 true 时,s.intern() == t.intern() 才为 true

当调用 intern 方法时,如果池已经包含一个等于此 String 对象的字符串(该对象由 equals(Object) 方法确定),则返回池中的字符串。否则,将此 String 对象添加到池中,并且返回此 String 对象的引用。

boolean isEmpty()

当且仅当length()==0时,返回true

static String join(CharSequence delimiter, CharSequence… elements)

static String join(CharSequence delimiter, Iterable

public class FirstJava {    public static void main(String[] args) {        List<String> names=new ArrayList<String>();        names.add("1");        names.add("2");        names.add("3");        System.out.println(String.join("-", names));        String[] arrStr=new String[]{"a","b","c"};        System.out.println(String.join("-", arrStr));        }}

int lastIndexOf(int ch)

返回在此字符串中最后一次出现的指定字符索引

int lastIndexOf(int ch, int fromIndex)

int lastIndexOf(String str)

int lastIndexOf(String str, int fromIndex)

int length()

返回字符串的长度

boolean matches(String regex)

判断该字符串是否符合所给的正则表达式

public class FirstJava {    public static void main(String[] args) {        String str1 = "tutorials", str2 = "learning";        boolean retval = str1.matches(str2);        // method gets different values therefore it returns false        System.out.println("Value returned = " + retval);        retval = str2.matches("learning");        // method gets same values therefore it returns true        System.out.println("Value returned = " + retval);        retval = str1.matches("tuts");        // method gets different values therefore it returns false        System.out.println("Value returned = " + retval);    }}

int offsetByCodePoint(int index, int codePointOffset)

指定点+偏离量在字符串中的索引值

public class FirstJava {    public static void main(String[] args) {        String str = "012345\n789";        System.out.println("string = " + str);    // returns the index within this String    int retval = str.offsetByCodePoints(3, 7);    // prints the index        System.out.println("index = " + retval);     }}

boolean regionMatches(int toffset, String other, int ooffset, int len)

boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)

用于测试两个字符串区域是相等的两个变体

public class FirstJava {    public static void main(String[] args) {        String Str1 = new String("Welcome to Yiibai.com");        String Str2 = new String("Yiibai");        String Str3 = new String("YIIBAI");        System.out.print("Return Value :");        System.out.println(Str1.regionMatches(11, Str2, 0, 6));        System.out.print("Return Value :");        System.out.println(Str1.regionMatches(11, Str3, 0, 6));        System.out.print("Return Value :");        System.out.println(Str1.regionMatches(true, 11, Str3, 0, 6));    }}//Return Value :true//Return Value :false//Return Value :true

String replace(char oldChar, char newChar)

String replace(CharSequence target, CharSequence replacement)

将字符串中的某种字符全部替换为另一种字符

public class FirstJava {    public static void main(String[] args) {        String str1 = "aabbccdd";        String str2 = str1.replace('a','c');        System.out.println(str2);    }}

String replaceAll(String regex, String replacement)

String replaceFirst(String regex, String replacement)

将字符串中的由正则表达式指定的所有(第一个)字符替换为指定的字符串

String[] split(String regex)

String[] spilt(String regex, int limit)

用所指定的正则表达式切割所给字符串

public class FirstJava {    public static void main(String[] args) {        String Str = new String("Welcome-to-Yiibai.com");        System.out.println("Return Value :" );        for (String retval: Str.split("-", 2)){            System.out.println(retval);        }        System.out.println("");        System.out.println("Return Value :" );        for (String retval: Str.split("-", 3)){            System.out.println(retval);        }        System.out.println("");        System.out.println("Return Value :" );        for (String retval: Str.split("-", 0)){            System.out.println(retval);        }        System.out.println("");        System.out.println("Return Value :" );        for (String retval: Str.split("-")){            System.out.println(retval);        }    }}

boolean startsWith(String prefix)

boolean startsWith(String prefix, int toffset)

测试字符串是否以指定的前缀起始

public class FirstJava {    public static void main(String[] args) {        String str1 = "aabbccddee";        boolean test1 = str1.startsWith("aabbcc");        boolean test2 = str1.startsWith("bb", 2);        System.out.println(test1);        System.out.println(test2);    }}

CharSequence subSequence(int beginIndex, int endIndex)

返回一个子字符队列

public class FirstJava {    public static void main(String[] args) {        String str1 = "aabbccddee";        String str2 = str1.substring(1,5);        System.out.println(str2);    }}

String substring(int beginIndex)

String substring(int beginIndex, int endIndex)

返回一个子字符串

public class FirstJava {    public static void main(String[] args) {        String str1 = "aabbccddee";        String str2 = str1.substring(1,5);        System.out.println(str2);    }}

char[] toCharArray()

将字符串转换为新的字符数组

public class FirstJava {    public static void main(String[] args) {        String str1 = "aabbccddee";        char[] chars = str1.toCharArray();        for (int i=0; i < chars.length ; i++ )            System.out.println(chars[i]);    }}

String toLowerCase()

String toLowerCase(Local loca)

大写转小写

public class FirstJava {    public static void main(String[] args) {        String Str = new String("AaBbCcDdEeFf");        System.out.print("Return Value :");        System.out.println(Str.toLowerCase());    }}

String toUpperCase()

String toUpperCase(Local local)

public class FirstJava {    public static void main(String[] args) {        String Str = new String("AaBbCcDdEeFf");        System.out.print("Return Value :");        System.out.println(Str.toUpperCase());    }}

String trim()

返回字符串,去掉头尾空格

public class FirstJava {    public static void main(String[] args) {        String Str = new String("       AaBbC         cDdEeFf          ");        System.out.print("Return Value :");        System.out.println(Str.trim());    }}

static String valueOf(boolean b)

static String valueOf(char c)

static String valueOf(char[] data)

static String valueOf(char[] data, int offset, int count)

static String valueOf(double d)

static String valueOf(float f)

static String valueOf(int i)

static String valueOf(long l)

static String valueOf(Object obj)

String toString()

原创粉丝点击