Java基礎之String和Stringbuffer的常用方法去獲取輸入郵箱的QQ
阿新 • • 發佈:2021-01-18
首先給定一個郵箱:[email protected],我們怎麼去取出郵箱裡面的qq號呢?
1.String
第一個方法是對於這一串字元,我們可以通過string的split方法去對這個郵箱進行分割,以獲取到我們想要的qq,程式碼為:
String z ="[email protected]"; String regex = "@";//作為split的分隔符 String z1[]=z.split(regex);//分割後得到的陣列 System.out.println(z1[0]+" 第一個分割之後的字元");//第一個分割之後的字元 System.out.println(z1[1]+" 第二個分割之後的字元");//第二個分割之後的字元
具體實現為先設定分割符regex(怎麼叫都行),然後建立一個數組去存放分隔之後的陣列物件,最後通過對陣列物件的獲取去得到qq,獲取之後的思路:可以用一個for迴圈去取出陣列然後進行比對輸出qq的,但這樣也差不多,故不多做介紹.實現效果為
第二個方法我們可以使用string的replace方法去對指定的字串進行替換,程式碼為
String regex1 = "@qq.com";//作為替換的字元 z.replaceAll(regex, ""); //字串的替換 System.out.println( z.replaceAll(regex1, ""));
實現效果為:
2.Stringbuffer
同樣對於Stringbuffer來說,也有replace方法。實現程式碼為:
String z ="[email protected]"; StringBuffer s = new StringBuffer(); s.append(z);//為stringbuff設定內容 System.out.println(s.reverse());//reverse方法翻轉stringbuff物件 System.out.println(s.replace(0, 7, ""));//replace方法替換第一個到第七個字元 System.out.println(s.reverse()+" Stringbuff的replace方法"); //因為每一次使用reverse方法和replace方法都會直接改變stringbuff物件, //所以完整語句為s.reverse().replace(0, 7, "").reverse()
其中先通過append為stringbuffer設定內容,然後對字串進行翻轉,因為qq字數不固定,而後面的@qq.com是固定的,所以進行一個翻轉去通過replace去對第一個到第七個字元進行一個替換,然後再進行一個翻轉得出正確的qq,實現效果為
而第二個方法為通過stringbuffer的delete方法去進行刪除第一道第七個字串,具體流程同replace,程式碼為
String z ="[email protected]";
StringBuffer Z = new StringBuffer();
Z.append(z);
System.out.println(Z.reverse().delete(0, 7).reverse()+" Stringbuff的delete方法");