subList?? subString???
今天看到了java中List中有個subList方法,感覺很熟悉有沒有?沒錯,在Stirng類中,也有個類似的方法:subString。
1
?String類的subString
String中的subString方法,官方解釋是:返回字符串的子字符串,其實我們一般也可以這么理解,在字符串中截取指定字符串。比如下面代碼:
//截取指定字符串public?static?void?test_subStirng(){String str = "abcd";String newStr = str.substring(1,3);System.out.println("原字符串:"+str);System.out.println("新字符串:"+newStr);}在調用subStirng方法之后,其結果如下:
subString中傳入了兩個參數,第一個參數是開始位置(包含),第二參數是結束位置(不包含)。
那么回頭我們在來看看subList方法。
2
List中類的subList
List中的subList方法,官方定義:返回一個列表的字列表,看到這兒的時候,是不是覺得和subString簡直一模一樣(從功能的角度看)。我們用代碼舉個例子:
public?static?void?test_List(){List<String> lists = new?ArrayList<String>();lists.add("a");lists.add("b");lists.add("c");lists.add("d");lists.add("e");System.out.println("原來的集合列表:");for?(String str : lists) {System.out.print(str+" ");}//使用sublistList<String> newList = lists.subList(1, 3);System.out.println("\n調用subList方法之后,遍歷集合");for?(String str : newList) {System.out.print(str+" ");}}在調用完subList之后的運行結果:
subList方法也是需要傳入兩個參數,第一個是開始位置(包含),第二個是結束位置(不包含)。
但是,如果我稍微改動一下此方法,代碼如下:
public?static?void?test_List_new(){List<String> lists = new?ArrayList<String>();lists.add("a");lists.add("b");lists.add("c");lists.add("d");lists.add("e");System.out.println("原來的集合列表:");for?(String str : lists) {System.out.print(str+" ");}//使用sublistList<String> newList = lists.subList(1, 3);//給newList中新插入元素newList.add("f");newList.add("g");System.out.println("\n調用subList方法之后,遍歷集合");for?(String str : newList) {System.out.print(str+" ");}}我們再來看看結果:
意外不,我明明改動的是newList集合,為什么原來的lists集合也跟著改了呢?這個知識點我們明天在講!
往期精彩
"爸媽沒多大本事"……
2020-10-07
中秋節支付寶口令紅包解析
2020-10-06
祝大家國慶節、中秋節快樂(文中有福利)
2020-10-01
存放80000000學生成績的集合,怎么統計平均分性能高
2020-09-30
asList方法產生的List對象不可更改
2020-09-29
避開基本類型數組轉換列表陷阱
2020-09-28
點分享
點點贊
點在看
總結
以上是生活随笔為你收集整理的subList?? subString???的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 爸妈没多大本事……
- 下一篇: 自己在家怎样染衣服?
