判斷該list集合裡面是否有連續的數字
// 引數 ,List集合:想要查詢連續數字的集合,max:想要找幾個連續數字
// 返回值:返回刪除連續數字之後的集合,(要是想要獲取連續序列的集合可以自行修改返回值就是多個LIst<Integer> seq )
private List<Integer> isSequence(List<Integer> pokers, int max) {
Collections.sort(pokers); // 先將集合中的元素排序
if(CollectionUtils.isNotEmpty(pokers) && pokers.size() >= max){
List<Integer> seq = new ArrayList<>(max);
int currValue = pokers.get(index);
for(int j = currValue; j < currValue + max; j ++){
if(pokers.contains(j)){ // 判斷當前元素的下一個是否在list集合裡面如果存在將 為true存在map裡seq.add(j); // 將連續的存在seq中
}
if(seq.size() == max){
for(Integer num : seq){
pokers.remove(pokers.indexOf(num)); // 根據元素的索引位置刪除元素 , 只想刪除一個元素seq對應的一個元素,並且不刪除重複元素的時候,
// 我使用的是poker.remove(int index) 根據索引刪除(
註釋:1,不可以直接使用pokers.remove(Object o) 這個方法,會發生陣列越界,
2,也不可以使用removeAll(Collenction<T> c)
舉例:List<Integer> a = new ArrayList<>(Array.asList(new Integer(1,2,3,4,5,6,7,1,1,1)));
List<Integer> b = new ArrayList<>(Array.asList(new Integer(1)));
用a.removeAll(b),就會把集合a裡面的所有的元素1,都會刪除。
}}
}
}
return pokers;
}