java string類辦法深刻解析。本站提示廣大學習愛好者:(java string類辦法深刻解析)文章只能為提供參考,不一定能成為您想要的結果。以下是java string類辦法深刻解析正文
import java.nio.charset.Charset;
import java.nio.charset.UnsupportedCharsetException;
import java.util.Locale;
import java.util.Date;
import java.util.regex.PatternSyntaxException;
import javax.xml.crypto.Data;
public class Stringxuexi {
public static void main(String[] argc)
{
//charAt(int index) 前往index處的Unicode字符
String strCom = "JAVA法式設計";
System.out.println(strCom.charAt(4));
//codePointAt(int index) 前往index處字符的Unicode編碼值
strCom = "I like JAVA ,too";
System.out.println(strCom.codePointAt(8));
//codePointBefore 前往index-1處字符的Unicode編碼值
System.out.println(strCom.codePointBefore(2));
//codePointCount(int beginIndex,int endIndex)辦法 前往指定文本規模內Unicode代碼點的數目
System.out.println(strCom.codePointCount(0, 3));
//compareTo(String str)
//假如兩個字符串分歧,那末他們要末在某個索引處的字符分歧,要末長度分歧,或許同時具有這兩種情形
//假如在一個或多個索引處字符分歧,假定k是這類索引的最小值,那末前往值就是這兩個字符串在地位k處
//兩個char值之差,假如沒有字符分歧的索引地位,則前往值是兩個字符串長度的差
System.out.println(strCom.compareTo("I like PHP"));
System.out.println(strCom.compareTo("I like JAVA too"));
//compareToIgnoreCase(String str) 疏忽年夜小寫比擬字符串年夜小
System.out.println(strCom.compareToIgnoreCase("I Like PHP"));
//concat(String str) 將另外一字符串聯接在此字符串的前面,假如參數字符串的長度為0,
//則前往此字符串,不然創立一個新的String對象
System.out.println(strCom.equals(strCom.concat("")));
System.out.println(strCom.concat(strCom));
//contains(CharSequence s)斷定字符串能否包括指定的char值序列
System.out.println(strCom.contains("JAVA"));
//valueOf(char []data) 靜態辦法,前往包括字符數組的字符的字符串
char [] array={'山','東'};
System.out.println(String.valueOf(array));
//valueOf(char[] data,int offset,int count)前往包括字符數組從offset處開端的count個字符
//構成的字符串
System.out.println(String.valueOf(array, 0, 1));
//endwith(String suffix)測試字符串能否是指定的後綴停止
System.out.println(strCom.endsWith("JAVA"));
//equals(object obj) 假如給定的對象表現的String與此String相等,則前往true,不然false
System.out.println(strCom.equals("I like JAVA"));
//equalsIgnoreCase(String anotherString) //疏忽年夜小寫與另外一字符串停止比擬,留意與equals辦法的參數類型分歧
System.out.println(strCom.equalsIgnoreCase("I Like JAva"));
//format(String format,Object ...args)靜態辦法 應用指定的格局字符串和參數前往一個格局話字符串
//%d 格局化為十進制整數
//%o 格局化為八進制整數
//%x %X 格局化為十六進制整數
System.out.println(String.format("%e %x %o %d %a %% %n", 15.000,15,15,15,15.0));
//format(Locale l,String format,Object ... args)
//經由過程給定的特別轉換符作為參數來完成對日期和時光字符串的格局化
//%te 一個月中的某一天
//%tb 指定說話情況的月份簡稱
//%tB 指定說話情況的月份全稱
//%tA 指定說話情況的禮拜幾全稱
//%ta 指定說話情況的禮拜幾簡稱
//%tc 包含全體日期和時光信息
//%tY 4位年份
//%ty 二位年份
//%tm 月份
//%tj 一年中的第幾天
//%td 一個月中的第幾天
Date date = new Date();
Locale form = Locale.CHINA;
String year = String.format(form, "%tY", date);
String month = String.format(form, "%tm", date);
String day = String.format(form, "%td", date);
System.out.println("明天是: "+ year + "年"+month+"月"+day+"日");
System.out.println(String.format(form, "%tc", date));
//byte[] getBytes() 獲得字符串的byte序列
byte[] str = strCom.getBytes();
for (int i = 0;i < str.length;i++)
System.out.print(str[i]+" ");
//getBytes(Charset charset)
//getBytes(String string)
//獲得編碼字符集的所得字符序列
try {
str = strCom.getBytes(Charset.defaultCharset());
for (int i = 0; i < str.length; i++)
System.out.println(str[i] + " ");
} catch (UnsupportedCharsetException e) {
// TODO: handle exception
e.printStackTrace();
}
//getchars(int srcBegin,int srcEnd,char[] dst,int dstBegin)
//將字符從此字符串復制到目的字符數組
char[] dst = new char[10];
strCom.getChars(0, 10, dst, 0);
for (int i = 0; i < dst.length;i++)
System.out.print(dst[i]);
System.out.println();
//hashCode() 前往字符串的哈希碼,String對象的哈希碼的盤算公式是
//s[0]*31^(n-1)+s[1]*31^(n-2)+...+s[n-1]
//空串的哈希碼為0
System.out.println(strCom.hashCode());
//indexOf(int ch) 獲得字符的第一個索引,ch是一個字符,假如沒有,前往-1
System.out.println(strCom.indexOf('A'));
//indexOf(int ch,int fromIndex) //前往從從指定的索引處開端的指定字符的索引
//fromIndex沒無限制,假如為負,與0等效,假如年夜於等於字符串長度,則前往-1
System.out.println(strCom.indexOf('A', 9));
//indexOf(String str)
//indexOf(String str,int fromIndex)
//前往指定字符串在此字符串第一次湧現處的索引
System.out.println(strCom.indexOf("JAVA"));
//intern() 前往字符串對象的標准化表現情勢
//當挪用intern辦法時,假如池曾經包括一個等於此String對象的字符串,則前往池中的字符串
//不然將此字符串對象添加到池中,並前往此String對象援用
//懂得這個處置機制也能夠讓我們在用到字符串常量的時刻懂得若何節儉這些字符串所占用的內存。
String strCom2 = new String("I like JAVA");
System.out.println(strCom == strCom2);
System.out.println(strCom.endsWith(strCom2));
System.out.println(strCom.compareTo(strCom2));
System.out.println(strCom.intern() == strCom2.intern());
String s1 = new String("你好,Java自在人");
String s2 = new String("你好,") + "Java自在人";
System.out.println(s1==s2);
System.out.println(s1.intern()==s2.intern());
//同indexOf,留意fromIndex 參數,是指從fromIndex處反向搜刮
System.out.println(strCom.lastIndexOf('A'));
System.out.println(strCom.lastIndexOf('A',10));
System.out.println(strCom.lastIndexOf("JAVA"));
System.out.println(strCom.lastIndexOf("JAVA", 10));
//前往字符串長度
System.out.println(strCom.length());
//matchs(String regex)婚配正則表達式
try {
String regex = "1234";
System.out.println(regex.matches("//d{4}"));
System.out.println(regex.replaceAll("//d{4}", "chen"));
System.out.println(regex.replaceFirst("//d{4}", "chen"));
} catch (PatternSyntaxException e) {
// TODO: handle exception
e.printStackTrace();
}
// offsetByCodePoints(int index,int codePointOffset)
//前往從給定的index處偏移codePointOffset個代碼點的索引
System.out.println(strCom.offsetByCodePoints(7, 4));
//測試兩個字符串區域能否相等,第一個參數為true時表現疏忽年夜小寫
System.out.println(strCom.regionMatches(true, 0, "I lIke", 0, 3));
System.out.println(strCom.regionMatches(0, "I like", 0, 3));
System.out.println(strCom.replace('A', 'a'));
System.out.println(strCom.replace("JAVA", "PHP"));
//String[] split(String regex,int limit)
//按指定的分隔符會字符串內容朋分並寄存到字符串數組中,limit為掌握形式運用次數
String[] info = strCom.split(" ,");
for (int i = 0; i < info.length;i++)
System.out.println(info[i]);
info = strCom.split(" ", 2);
for (int i = 0; i < info.length;i++)
System.out.println(info[i]);
//startsWith(String prefix,int toffset)//斷定能否以指定前綴開端
//toffset為負或年夜於字符串長度成果為false
System.out.println(strCom.startsWith("I"));
System.out.println(strCom.startsWith("I",-1));
//CharSequeuece subSequeuece(int beginIndex,int endIndex)
//前往一個新的字符序列
System.out.println(strCom.subSequence(2, 6));
//String substring(int beginindex,int endIndex)
//前往子字符串
System.out.println(strCom.substring(2));
System.out.println(strCom.substring(2, 6));
//toCharArray() 字符串變字符數組
char[] str1 = strCom.toCharArray();
for (int i = 0; i < str1.length;i++)
System.out.print(str1[i]+" ");
System.out.println();
//toLowerCase(Locale locale) 將字符串中的一切字符釀成年夜/小寫前往新的字符串
System.out.println(strCom.toLowerCase());
System.out.println(strCom.toUpperCase());
System.out.println(strCom.toUpperCase(form));
System.out.println(strCom.toLowerCase(form));
//trim()辦法掏出字符串的前後空白
System.out.println((" "+strCom).trim());
//valueOf() 靜態辦法 完成根本數據類型轉成字符串
System.out.println(String.valueOf(true));
System.out.println(String.valueOf('A'));
System.out.println(String.valueOf(12.0));
}
}