① String常使用的方法有哪些
這些是最常用的:
char charAt (int index) 返回index所指定的字元
String concat(String str) 將兩字元串連接
boolean endsWith(String str) 測試字元串是否以str結尾
boolean equals(Object obj) 比較兩對象
char[] getBytes 將字元串轉換成字元數組返回
char[] getBytes(String str) 將指定的字元串轉成制服數組返回
boolean startsWith(String str) 測試字元串是否以str開始
int length() 返回字元串的長度
String replace(char old ,char new) 將old用new替代
char[] toCharArray 將字元串轉換成字元數組
String toLowerCase() 將字元串內的字元改寫成小寫
String toUpperCase() 將字元串內的字元改寫成大寫
String valueOf(Boolean b) 將布爾方法b的內容用字元串表示
String valueOf(char ch) 將字元ch的內容用字元串表示
String valueOf(int index) 將數字index的內容用字元串表示
String valueOf(long l) 將長整數字l的內容用字元串表示
String substring(int1,int2) 取出字元串內第int1位置到int2的字元串
=============
以下解釋的十分清楚了,還有例子
1、length() 字元串的長度
例:char chars[]={'a','b'.'c'};
String s=new String(chars);
int len=s.length();
2、charAt() 截取一個字元
例:char ch;
ch="abc".charAt(1); 返回'b'
3、 getChars() 截取多個字元
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
sourceStart指定了子串開始字元的下標,sourceEnd指定了子串結束後的下一個字元的下標。因此, 子串包含從sourceStart到sourceEnd-1的字元。接收字元的數組由target指定,target中開始復制子串的下標值是targetStart。
例:String s="this is a demo of the getChars method.";
char buf[]=new char[20];
s.getChars(10,14,buf,0);
4、getBytes()
替代getChars()的一種方法是將字元存儲在位元組數組中,該方法即getBytes()。
5、toCharArray()
6、equals()和equalsIgnoreCase() 比較兩個字元串
7、regionMatches() 用於比較一個字元串中特定區域與另一特定區域,它有一個重載的形式允許在比較中忽略大小寫。
boolean regionMatches(int startIndex,String str2,int str2StartIndex,int numChars)
boolean regionMatches(boolean ignoreCase,int startIndex,String str2,int str2StartIndex,int numChars)
8、startsWith()和endsWith()
startsWith()方法決定是否以特定字元串開始,endWith()方法決定是否以特定字元串結束
9、equals()和==
equals()方法比較字元串對象中的字元,==運算符比較兩個對象是否引用同一實例。
例:String s1="Hello";
String s2=new String(s1);
s1.eauals(s2); //true
s1==s2;//false
10、compareTo()和compareToIgnoreCase() 比較字元串
11、indexOf()和lastIndexOf()
indexOf() 查找字元或者子串第一次出現的地方。
lastIndexOf() 查找字元或者子串是後一次出現的地方。
12、substring()
它有兩種形式,第一種是:String substring(int startIndex)
第二種是:String substring(int startIndex,int endIndex)
13、concat() 連接兩個字元串
14 、replace() 替換
它有兩種形式,第一種形式用一個字元在調用字元串中所有出現某個字元的地方進行替換,形式如下:
String replace(char original,char replacement)
例如:String s="Hello".replace('l','w');
第二種形式是用一個字元序列替換另一個字元序列,形式如下:
String replace(CharSequence original,CharSequence replacement)
15、trim() 去掉起始和結尾的空格
16、valueOf() 轉換為字元串
17、toLowerCase() 轉換為小寫
18、toUpperCase() 轉換為大寫
19、StringBuffer構造函數
StringBuffer定義了三個構造函數:
StringBuffer()
StringBuffer(int size)
StringBuffer(String str)
StringBuffer(CharSequence chars)
(1)、length()和capacity()
一個StringBuffer當前長度可通過length()方法得到,而整個可分配空間通過capacity()方法得到。
(2)、ensureCapacity() 設置緩沖區的大小
void ensureCapacity(int capacity)
(3)、setLength() 設置緩沖區的長度
void setLength(int len)
(4)、charAt()和setCharAt()
char charAt(int where)
void setCharAt(int where,char ch)
(5)、getChars()
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
(6)、append() 可把任何類型數據的字元串表示連接到調用的StringBuffer對象的末尾。
例:int a=42;
StringBuffer sb=new StringBuffer(40);
String s=sb.append("a=").append(a).append("!").toString();
(7)、insert() 插入字元串
StringBuffer insert(int index,String str)
StringBuffer insert(int index,char ch)
StringBuffer insert(int index,Object obj)
index指定將字元串插入到StringBuffer對象中的位置的下標。
(8)、reverse() 顛倒StringBuffer對象中的字元
StringBuffer reverse()
(9)、delete()和deleteCharAt() 刪除字元
StringBuffer delete(int startIndex,int endIndex)
StringBuffer deleteCharAt(int loc)
(10)、replace() 替換
StringBuffer replace(int startIndex,int endIndex,String str)
(11)、substring() 截取子串
String substring(int startIndex)
String substring(int startIndex,int endIndex)
② string類的關鍵方法
這要看string的源碼,一般常用的方法有equals比較,replace替換,還有indexof取字元下標,substring截取等
③ java中String 類的常用方法有哪些
友情提示:
1. 字元串 str 中字元的索引從0開始,范圍為 0 到 str.length()-1
2. 使用 indexOf 進行字元或字元串查找時,如果匹配返回位置索引;如果沒有匹配結果,返回 -1
3. 使用 substring(beginIndex , endIndex) 進行字元串截取時,包括 beginIndex 位置的字元,不包括 endIndex 位置的字元
④ string類的常用方法都有哪些
可以看String類的源碼,我把重點給你圈出來了。有不懂的可以隨時找我。
⑤ string類型中都有哪些方法
java中String的操作api2007-04-19 16:25:59| 分類: Work &Study | 標簽: |字型大小大中小 訂閱 .
創建一個字元串實例變數StringBuffer buf = new StringBuffer("Java"); // Append buf.append(" Almanac v1/"); // Java Almanac v1/ buf.append(3); // Java Almanac v1/3 // Set int index = 15; buf.setCharAt(index, '.'); // Java Almanac v1.3 // Insert index = 5; buf.insert(index, "Developers ");// Java Developers Almanac v1.3 // Replace int start = 27; int end = 28; buf.replace(start, end, "4"); // Java Developers Almanac v1.4 // Delete start = 24; end = 25; buf.delete(start, end); // Java Developers Almanac 1.4 // Convert to string String s = buf.toString();比較字元串String s1 = "a"; String s2 = "A"; String s3 = "B"; // Check if identical 監測是否一致 boolean b = s1.equals(s2); // false // Check if identical ignoring case b = s1.equalsIgnoreCase(s2); // true // Check order of two strings 監測兩個字元串的順序 int i = s1.compareTo(s2); // 32; lowercase follows uppercase if (i < 0) { // s1 precedes s2 } else if (i > 0) { // s1 follows s2 } else { // s1 equals s2 } // Check order of two strings ignoring case i = s1.compareToIgnoreCase(s3); // -1 if (i < 0) { // s1 precedes s3 } else if (i > 0) { // s1 follows s3 } else { // s1 equals s3 } // A string can also be compared with a StringBuffer; StringBuffer sbuf = new StringBuffer("a"); b = s1.contentEquals(sbuf); // true判斷一個字元串中是否包含另外一個字元串String string = "Madam, I am Adam"; // Starts with boolean b = string.startsWith("Mad"); // true // Ends with b = string.endsWith("dam"); // true // Anywhere b = string.indexOf("I am") > 0; // true // To ignore case, regular expressions must be used // Starts with b = string.matches("(?i)mad.*"); // Ends with b = string.matches("(?i).*adam"); // Anywhere b = string.matches("(?i).*i am.*");獲取制定字元串中的子串int start = 1; int end = 4; String substr = "aString".substring(start, end); // Str查詢指定字元串中的子串以及字母的位置String string = "madam, i am Adam"; // Characters // First occurrence of a c int index = string.indexOf('a'); // 1 // Last occurrence index = string.lastIndexOf('a'); // 14 // Not found index = string.lastIndexOf('z'); // -1 // Substrings // First occurrence index = string.indexOf("dam"); // 1 // Last occurrence index = string.lastIndexOf("dam"); // 13 // Not found index = string.lastIndexOf("z"); // -1取代制定字元的函數操作// Replace all occurrences of 'a' with 'o' String newString = string.replace('a', 'o');取代制定字元串的操作static String replace(String str, String pattern, String replace) { int s = 0; int e = 0; StringBuffer result = new StringBuffer(); while ((e = str.indexOf(pattern, s)) >= 0) { result.append(str.substring(s, e)); result.append(replace); s = e+pattern.length(); } result.append(str.substring(s)); return result.toString(); }轉變字元串的大小寫// Convert to upper case String upper = string.toUpperCase(); // Convert to lower case String lower = string.toLowerCase();Converting a Primitive Type Value to a String
// Use String.valueOf() String s = String.valueOf(true); // true s = String.valueOf((byte)0x12); // 18 s = String.valueOf((byte)0xFF); // -1 s = String.valueOf('a'); // a s = String.valueOf((short)123); // 123 s = String.valueOf(123); // 123 s = String.valueOf(123L); // 123 s = String.valueOf(1.23F); // 1.23 s = String.valueOf(1.23D); // 1.23 // Use + s = ""+true; // true s = ""+((byte)0x12); // 18 s = ""+((byte)0xFF); // -1 s = ""+'a'; // a s = ""+((short)123); // 123 s = ""+123; // 123 s = ""+123L; // 123 s = ""+1.23F; // 1.23 s = ""+1.23D; // 1.23Converting Between Unicode and UTF-8
try { // Convert from Unicode to UTF-8 String string = "abc\u5639\u563b"; byte[] utf8 = string.getBytes("UTF-8"); // Convert from UTF-8 to Unicode string = new String(utf8, "UTF-8"); } catch (UnsupportedEncodingException e) { }Determining a Character's Unicode Block
char ch = '\u5639'; Character.UnicodeBlock block = Character.UnicodeBlock.of(ch);Determining If a String Is a Legal Java Identifier
// Returns true if s is a legal Java identifier. public static boolean isJavaIdentifier(String s) { if (s.length() == 0 || !Character.isJavaIdentifierStart(s.charAt(0))) { return false; } for (int i=1; i<s.length(); i++) { if (!Character.isJavaIdentifierPart(s.charAt(i))) { return false; } } return true; } // Some examples boolean b = isJavaIdentifier("my_var"); // true b = isJavaIdentifier("my_var.1"); // false b = isJavaIdentifier("$my_var"); // true b = isJavaIdentifier("\u0391var"); // true b = isJavaIdentifier("_"); // true b = isJavaIdentifier("___FCKpd___175quot;); // true b = isJavaIdentifier("1$my_var"); // falseNumbers
精確計算類實例package hxj;
import java.math.BigDecimal;
/**
* 由於Java的簡單類型不能夠精確的對浮點數進行運算,這個工具類提供精
* 確的浮點數運算,包括加減乘除和四捨五入。
*/
public class mymatch {
//默認除法運算精度
private static final int DEF_DIV_SCALE = 10;
//這個類不能實例化
private Arith() {}
/**
* 提供精確的加法運算。
* @param v1 被加數
* @param v2 加數
* @return 兩個參數的和
*/
public static double add(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.add(b2).doubleValue();
}
/**
* 提供精確的減法運算。
* @param v1 被減數
* @param v2 減數
* @return 兩個參數的差
*/
public static double sub(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.subtract(b2).doubleValue();
}
/**
* 提供精確的乘法運算。
* @param v1 被乘數
* @param v2 乘數
* @return 兩個參數的
*/
public static double mul(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.multiply(b2).doubleValue();
}
/**
* 提供(相對)精確的除法運算,當發生除不盡的情況時,精確到
* 小數點以後10位,以後的數字四捨五入。
* @param v1 被除數
* @param v2 除數
* @return 兩個參數的商
*/
public static double div(double v1, double v2) {
return div(v1, v2, DEF_DIV_SCALE);
}
/**
* 提供(相對)精確的除法運算。當發生除不盡的情況時,由scale參數指
* 定精度,以後的數字四捨五入。
* @param v1 被除數
* @param v2 除數
* @param scale 表示表示需要精確到小數點以後幾位。
* @return 兩個參數的商
*/
public static double div(double v1, double v2, int scale) {
if (scale < 0) {
throw new IllegalArgumentException("The scale must be a positive integer or zero");
}
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
}
/**
* 提供精確的小數位四捨五入處理。
* @param v 需要四捨五入的數字
* @param scale 小數點後保留幾位
* @return 四捨五入後的結果
*/
public static double round(double v, int scale) {
if (scale < 0) {
throw new IllegalArgumentException("The scale must be a positive integer or zero");
}
BigDecimal b = new BigDecimal(Double.toString(v));
BigDecimal one = new BigDecimal("1");
return b.divide(one, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
}
};
轉變字元串為數字格式byte b = Byte.parseByte("123"); short s = Short.parseShort("123"); int i = Integer.parseInt("123"); long l = Long.parseLong("123"); float f = Float.parseFloat("123.4"); double d = Double.parseDouble("123.4e10");Parsing and Formatting a Number into Binary, Octal, and Hexadecimal
int i = 1023; // Parse and format to binary i = Integer.parseInt("1111111111", 2); // 1023 String s = Integer.toString(i, 2); // 1111111111 // Parse and format to octal i = Integer.parseInt("1777", 8); // 1023 s = Integer.toString(i, 8); // 1777 // Parse and format to decimal i = Integer.parseInt("1023"); // 1023 s = Integer.toString(i); // 1023 // Parse and format to hexadecimal i = Integer.parseInt("3ff", 16); // 1023 s = Integer.toString(i, 16); // 3ff // Parse and format to arbitrary radix <= Character.MAX_RADIX int radix = 32; i = Integer.parseInt("vv", radix); // 1023 s = Integer.toString(i, radix); // vv
⑥ java中string類的方法有哪些
方法摘要
char charAt(int index)
返回指定索引處的 char 值。
int codePointAt(int index)
返回指定索引處的字元(Unicode 代碼點)。
int codePointBefore(int index)
返回指定索引之前的字元(Unicode 代碼點)。
int codePointCount(int beginIndex, int endIndex)
返回此 String 的指定文本范圍中的 Unicode 代碼點數。
int compareTo(String anotherString)
按字典順序比較兩個字元串。
int compareToIgnoreCase(String str)
不考慮大小寫,按字典順序比較兩個字元串。
String concat(String str)
將指定字元串聯到此字元串的結尾。
boolean contains(CharSequence s)
當且僅當此字元串包含 char 值的指定序列時,才返回 true。
boolean contentEquals(CharSequence cs)
當且僅當此 String 表示與指定序列相同的 char 值時,才返回 true。
boolean contentEquals(StringBuffer sb)
當且僅當此 String 表示與指定的 StringBuffer 相同的字元序列時,才返回 true。
static String ValueOf(char[] data)
返回指定數組中表示該字元序列的字元串。
static String ValueOf(char[] data, int offset, int count)
返回指定數組中表示該字元序列的字元串。
boolean endsWith(String suffix)
測試此字元串是否以指定的後綴結束。
boolean equals(Object anObject)
比較此字元串與指定的對象。
boolean equalsIgnoreCase(String anotherString)
將此 String 與另一個 String 進行比較,不考慮大小寫。
static String format(Locale l, String format, Object... args)
使用指定的語言環境、格式字元串和參數返回一個格式化字元串。
static String format(String format, Object... args)
使用指定的格式字元串和參數返回一個格式化字元串。
byte[] getBytes()
使用平台默認的字元集將此 String 解碼為位元組序列,並將結果存儲到一個新的位元組數組中。
void getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin)
已過時。 該方法無法將字元正確轉換為位元組。從 JDK 1.1 起,完成該轉換的首選方法是通過 getBytes() 構造方法,該方法使用平台的默認字元集。
byte[] getBytes(String charsetName)
使用指定的字元集將此 String 解碼為位元組序列,並將結果存儲到一個新的位元組數組中。
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
將字元從此字元串復制到目標字元數組。
int hashCode()
返回此字元串的哈希碼。
int indexOf(int ch)
返回指定字元在此字元串中第一次出現處的索引。
int indexOf(int ch, int fromIndex)
從指定的索引開始搜索,返回在此字元串中第一次出現指定字元處的索引。
int indexOf(String str)
返回第一次出現的指定子字元串在此字元串中的索引。
int indexOf(String str, int fromIndex)
從指定的索引處開始,返回第一次出現的指定子字元串在此字元串中的索引。
String intern()
返回字元串對象的規范化表示形式。
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)
通知此字元串是否匹配給定的正則表達式。
int offsetByCodePoints(int index, int codePointOffset)
返回此 String 中從給定的 index 處偏移 codePointOffset 個代碼點的索引。
boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
測試兩個字元串區域是否相等。
boolean regionMatches(int toffset, String other, int ooffset, int len)
測試兩個字元串區域是否相等。
String replace(char oldChar, char newChar)
返回一個新的字元串,它是通過用 newChar 替換此字元串中出現的所有 oldChar 而生成的。
String replace(CharSequence target, CharSequence replacement)
使用指定的字面值替換序列替換此字元串匹配字面值目標序列的每個子字元串。
String replaceAll(String regex, String replacement)
使用給定的 replacement 字元串替換此字元串匹配給定的正則表達式的每個子字元串。
String replaceFirst(String regex, String replacement)
使用給定的 replacement 字元串替換此字元串匹配給定的正則表達式的第一個子字元串。
String[] split(String regex)
根據給定的正則表達式的匹配來拆分此字元串。
String[] split(String regex, int limit)
根據匹配給定的正則表達式來拆分此字元串。
boolean startsWith(String prefix)
測試此字元串是否以指定的前綴開始。
boolean startsWith(String prefix, int toffset)
測試此字元串是否以指定前綴開始,該前綴以指定索引開始。
CharSequence subSequence(int beginIndex, int endIndex)
返回一個新的字元序列,它是此序列的一個子序列。
String substring(int beginIndex)
返回一個新的字元串,它是此字元串的一個子字元串。
String substring(int beginIndex, int endIndex)
返回一個新字元串,它是此字元串的一個子字元串。
char[] toCharArray()
將此字元串轉換為一個新的字元數組。
String toLowerCase()
使用默認語言環境的規則將此 String 中的所有字元都轉換為小寫。
String toLowerCase(Locale locale)
使用給定 Locale 的規則將此 String 中的所有字元都轉換為小寫。
String toString()
返回此對象本身(它已經是一個字元串!)。
String toUpperCase()
使用默認語言環境的規則將此 String 中的所有字元都轉換為大寫。
String toUpperCase(Locale locale)
使用給定的 Locale 規則將此 String 中的所有字元都轉換為大寫。
String trim()
返回字元串的副本,忽略前導空白和尾部空白。
static String valueOf(boolean b)
返回 boolean 參數的字元串表示形式。
static String valueOf(char c)
返回 char 參數的字元串表示形式。
static String valueOf(char[] data)
返回 char 數組參數的字元串表示形式。
static String valueOf(char[] data, int offset, int count)
返回 char 數組參數的特定子數組的字元串表示形式。
static String valueOf(double d)
返回 double 參數的字元串表示形式。
static String valueOf(float f)
返回 float 參數的字元串表示形式。
static String valueOf(int i)
返回 int 參數的字元串表示形式。
static String valueOf(long l)
返回 long 參數的字元串表示形式。
static String valueOf(Object obj)
返回 Object 參數的字元串表示形式。
從類 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
⑦ 列出string類的常用方法,需要說明方法的返回值類型,輸入參數的類型及方法的作用。
重載
類中定義的方法的不同版本
public int Calculate(int x, int y)
public double Calculate(double x, double y)
特點(兩必須一可以)
方法名必須相同
參數列表必須不相同
返回值類型可以不相同
覆寫
子類中為滿足自己的需要來重復定義某個方法的不同實現。
通過使用override關鍵字來實現覆寫。
只有虛方法和抽象方法才能被覆寫。
要求(三相同)
相同的方法名稱
相同的參數列表
相同的返回值類型
⑧ java中string類有哪些常用方法
用的比較多的: 1 替換字元串 replace(); 2 分割字元串 split("regex"); 3 equals 字元串比較 4 length() 獲取長度、、、、好多好多 你看看api
⑨ String類的幾個常用方法
一. Java的api-docs文檔組成
1. 在docs中,Java中任何一個類的文檔由如下幾部分組成:
★類的相關定義,包括類的名稱,有哪些父類,有哪些介面;
★類的相關簡介,包括一些基本的使用說明;
★成員(Field)摘要:屬性就是一種成員,會列出所有出現的成員信息項;
★構造方法(Constructor)說明:列出該類中所有構造方法的信息;
★方法信息(Method)說明:所有類中定義好的可以使用的方法;
★成員、構造、方法的詳細信息。
二. 字元串與字元數組
1. 字元串就是一個字元數組,所以在String類裡面支持有字元數組轉換為字元串以及字元串變為字元的處理操作方法。這些處理操作方法如下:
ToDo
char ch = 'a' ;
//ch = (char) (ch - 32) ;
ch -= 32 ; // 這樣簡寫可以避免像上面一樣寫強制轉換並且避免出現異常
三. 位元組與字元串
1. 位元組更多的情況是用於數據傳輸以及編碼轉換處理之中,在String類裡面提供有對位元組操作的支持。
2. 位元組並不適合處理中文,而只有字元適合於處理中文,並且按照程序的概念來講,一個字元等於2個位元組,位元組只適合於處理二進制數據。
⑩ c++ string類的常用方法有哪些
1、定義和構造初始化string 提供了很多構造函數,可以以多種方式來初始化string字元串。
2、賦值,拼接字元串string重載了 = + += 等多種運算符,讓字元串組合拼接更簡單。
3、訪問字元操作string可以按數組方式,以下標來訪問。還可以用at()函數訪問指定的字元。
4、可以使用 STL 的介面可以把 string 理解為一個特殊的容器,容器中裝的是字元。
5、比較操作 == != > >= < <= compare 等string的比較操作,按字元在字典中的順序進行逐一比較。
string的特性描述
intcapacity()const;//返回當前容量(即string中不必增加內存即可存放的元素個數)。
intmax_size()const;//返回string對象中可存放的最大字元串的長度。
intsize()const;//返回當前字元串的大小。
intlength()const;//返回當前字元串的長度。
boolempty()const;//當前字元串是否為空。
voidresize(intlen,charc);//把字元串當前大小置為len,並用字元c填充不足的部分。