1. JS中的String 對象及其屬性(方法)
String 對象用於處理文本(字元串):
參數是要存儲在 String 對象中或轉換成原始字元串的值 ;
通過構造函數的方式也可以把數字類型轉成字元串類型;
let str = new String(123456);
console.log(str);
字面量的方式去創建一個字元串
let str = 'he k'
1、屬性 length 字元串的長度
整個字元串(無論是內部的空格還是外部的空格)都算成長度
console.log(str.length);
字元串有length屬性 也可以被遍歷
for(var i=0;i<str.length;i++){
console.log(str[i]); }
2、 charAt() 返回在指定位置的字元(註:字元串中第一個字元的下標是0)
如果寫的索引位置找不到對應的字元 會返回一個空字元串
let a = str.charAt(6);
console.log(a);
3、concat() 連接字元串
會返回一個新的拼接後的字元串
let newstr = str.concat('itty');
console.log(newstr);
4、 replace() 用於在字元串中用一些字元替換另一些字元,或替換一個與正則表達式匹配的子串 ;
replace會把第一參數(第一個參數是屬於原字元串的字元)替換成第二個參數裡面內容
原來的字元串不會受到影響,會返回一個新的替換後的字元串
let str = "hello world";
let a = str.replace('world','kitty');
console.log(a,str);
let str = 'abc123qwe456';
5、/\d/正則表達式 代表字元串裡面的第一個數字替換成nnn
/\d+/ 表示匹配字元串裡面的所有數字當成一個整體替換成nnn
let a = str.replace(/\d+/,'nnn')
因為/\d+/ 這段正則不是全局的,所以只會改變第一個匹配項(123整體)
因為/\d/ 這段正則不是全局的,所以只會改變第一個匹配項(1)
let a = str.replace(/\d/,'n')
想讓str中所有的數字都變成n
正則裡面的g表示全局的意思 str.replace(/\d/g,'n') 可以把字元串裡面的每一個數字都變成n
正則裡面的g表示全局的意思 str.replace(/\d+/g,'n')
把字元串裡面的所有數字當成一個整體都變成n
let a = str.replace(/\d/g,'n')
console.log(a);
sort會對原數組造成影響
let arr = [4,5,1,3]
let newarr = arr.sort();
console.log(arr[0]);
let str = 'abcdefg'
eg: 通過索引找到e charAt方法, 再寫一個字元串 aaaa 拼接到str上 並答應出來新的字元串 , 把abcd替換成hello 並把替換後的字元串列印出來;
let str = 'abcdefg';
console.log(str.charAt(4));
let str2 = 'aaaa';
let newstr = str.concat(str2);
console.log(newstr);
let rstr = str.replace('abcd','hello')
console.log(rstr);
function fn(){
arguments 參數集合 是一個類數組
類數組不具有數組的方法 比如push
arguments.push(5)
es6裡面提供了一個方法 Array.from
使用Array.from把類數組轉成真正的數組,這樣就可以使用數組的方法了 比如push pop
let arr = new Array()
let arr = Array.from(arguments)
arr.push(5)
console.log(arr); }
fn(1,2,3,4)
6、split() 把一個字元串分割成字元串數組
數組轉字元串
let arr = [1,2,3];
let str = arr.join('-');
console.log(str);
let str = 'hello';
split()不加參數 會把hello這個整體放到數組當中
str.split('') 把hello這個字元串 用空字元串分割 轉化為數組
str.split(',') 如果用字元串中不存在的字元分割 那麼還是會把整體放到數組中
str.split('e') 用e當作分割符 把字元串分割成數組 ['h','llo']
str.split('l') 用l當作分割符 會變成空字元串 因為有兩個l 所以會分割成用['he', '', 'o']
let arr = str.split('l');
console.log(arr);
7、 indexOf() 返回某個指定的字元串值在字元串中首次出現的位置(★首次很重要)
let str = 'hello'
str.charAt(1) => e
和數組的indexOf一樣
let index = str.indexOf('l');
console.log(index);
8、lastIndexOf() 返回一個指定的字元串值最後出現的位置
let str = 'hello'
let index = str.lastIndexOf('l');
console.log(index);
9、 match() 可在字元串內檢索指定的值,或找到一個或多個正則表達式的匹配
let str = 'he123llo456';
str.match('o') 使用match來檢索o 可以知道o在字元串內的信息,以數組的形式返回
比如o所在的索引,o所在的字元串和o的長度
let a = str.match('o')
console.log(a);
/\d+/ 代表匹配一段整體的數字
/\d/代表匹配一個數字 g代表全局
總體來說就是 在str字元串全局內 去查找一個一個的數字
會以一個數組的形式方式
不寫g 只會返回第一個 寫g 代表全局 會查找所有
let a = str.match(/\d+/g);
console.log(a);
10、 toLowerCase() 把字元串轉換為小寫
let str = "HELLO"
let str2 = str.toLowerCase();
console.log(str2);
11、 toUpperCase() 把字元串轉換為大寫
let str = 'hello'
let str2 = str.toUpperCase();
console.log(str2);
2. 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