完善Java的一些沒有的方法
阿新 • • 發佈:2018-12-12
在做專案時,很多時候需要獲取字串中最後一個字串是什麼,為了方便寫了一個函式,實現起來很簡單,原理就是先獲取字串的長度,然後通過字串擷取獲得最後一個字元。以下是程式碼:
public String getLastChar(String str){
if(str==null||str.length()==0){
return null;
}else if(str.length()==1)
return str;
return str.substring(str.length()-1);
}
在過濾ArrayList中重複的元素時,有一個簡單的方法,就是通過HashSet。
ArrayList<String> list=new ArrayList<>();
//直接將ArrayList轉換為Set集合,自動將重複的元素去掉了
Set<String> set=new HashSet<>(list);
//如果想獲取沒有重複元素的ArrayList物件
ArrayList<String> newList=new ArrayList<>(set);
還可以通過遍歷ArrayList來過濾重複的元素,為了方便以後使用,可以將其封裝成一個函式。
public ArrayList<String> StrFilter(ArrayList<String> list){ int len=list.size(); if(len<2){ return list; }else { ArrayList<String> newList = new ArrayList<>(); for (int i = 0; i < len; ++i) { String TempStr = list.get(i); if (newList.contains(TempStr)) continue; newList.add(TempStr); } return newList; } }
有的時候需要獲取兩個ArrayList的並集,需要先去重在求並集。
public static ArrayList<String> receiveUnionList(ArrayList<String> firstArrayList, ArrayList<String> secondArrayList) { ArrayList<String> resultList = new ArrayList<String>(); Set<String> firstSet = new TreeSet<String>(firstArrayList); for(String id : secondArrayList) { // 當新增不成功的時候 說明firstSet中已經存在該物件 firstSet.add(id); } resultList = new ArrayList<String>(firstSet); return resultList; }
如果後續發現還有什麼Java沒有提供的常用的方法,還會繼續更新。