摘要:事件起因博主在學習爬蟲的時候,需要將一個等分成個。實現(xiàn)代碼直接附上自己寫的代碼輕噴平分成份數(shù)據(jù)量盡可能相等需要平分的平分成分商數(shù)余數(shù)偏移量循環(huán)長度起始下標結(jié)束下標代碼用例代碼用例如下原始數(shù)據(jù)分成等份按等份分組后輸出的結(jié)果如下
事件起因
博主在學習 Python 爬蟲的時候,需要將一個 list 等分成 n 個 list 。
由于能力有限,自己也沒有更好的實現(xiàn)方式,所以就現(xiàn)成的拿了別人的代碼直接用。
</>復制代碼
def splist(l, s):
return [l[i:i+s] for i in range(len(l)) if i%s==0]
然而很不巧的的是,項目過程中又碰到了這個問題,而且這次用的是 Java !!!
雖然說處理的過程是有類似的地方,但真動手寫起來還是比較棘手的。畢竟 Java 沒有像 Python 這些豐富的庫函數(shù)。
網(wǎng)上我也找過一些類似的方法,但都不是很滿意,所以還是自己花時間折騰來造造輪子。
直接附上自己寫的代碼(輕噴):
</>復制代碼
/**
* 平分list成n份 數(shù)據(jù)量盡可能相等
* @param list 需要平分的list
* @param n 平分成n分
* @return
*/
public static List> splitList(List list, int n) {
List> strList = new ArrayList<>();
if (list == null) return strList;
int size = list.size();
int quotient = size / n; // 商數(shù)
int remainder = size % n; // 余數(shù)
int offset = 0; // 偏移量
int len = quotient > 0 ? n : remainder; // 循環(huán)長度
int start = 0; // 起始下標
int end = 0; // 結(jié)束下標
List tempList = null;
for (int i = 0; i < len; i++) {
if (remainder != 0) {
remainder--;
offset = 1;
} else {
offset = 0;
}
end = start + quotient + offset;
tempList = list.subList(start, end);
start = end;
strList.add(tempList);
}
return strList;
}
代碼用例
代碼用例如下:
</>復制代碼
public static void main(String[] args) {
List integerList = new ArrayList<>();
// 原始數(shù)據(jù):[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
for (int i = 0; i < 14; i++) {
integerList.add(i);
}
List> splitList = splitList(integerList, 10); // 分成10等份
System.out.println(splitList);
}
按10等份分組后輸出的結(jié)果如下:
</>復制代碼
[[0, 1], [2, 3], [4, 5], [6, 7], [8], [9], [10], [11], [12], [13]]
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/67833.html
摘要:基于切割多邊形實現(xiàn)思路初稿詳見多邊形等分依賴實現(xiàn)實現(xiàn)過程結(jié)果類泰森多邊形平分多邊形結(jié)果原始平面隨機點集合分組后組中心集合構(gòu)造泰森多邊形聚合類聚合聚合總量數(shù)據(jù)集合簇族數(shù)量中 基于K-means 切割多邊形 JAVA實現(xiàn) 思路初稿詳見多邊形等分 依賴 geotools ekmeans org.locationtech.jts jts-co...
摘要:關(guān)于旋轉(zhuǎn)木馬效果實用例子一個實際應用在優(yōu)酷的頻道頁。將對的數(shù)據(jù)操作轉(zhuǎn)化為數(shù)組,數(shù)組元素存儲各項的數(shù)據(jù)寬高絕對定位偏移值透明度以及層疊參數(shù),在模板處遍歷實際項目的數(shù)組,其樣式則通過索引獲取對數(shù)組的元素數(shù)據(jù)。 同事拿到個設(shè)計稿,是旋轉(zhuǎn)木馬的輪播效果,于是網(wǎng)上找了一下,發(fā)現(xiàn)了jquery實現(xiàn)的效果,一有空就看看源碼,研究其實現(xiàn)原理,想著用vue的數(shù)據(jù)驅(qū)動方式來實現(xiàn)一個,但這個效果跟以往做的d...
摘要:關(guān)于旋轉(zhuǎn)木馬效果實用例子一個實際應用在優(yōu)酷的頻道頁。將對的數(shù)據(jù)操作轉(zhuǎn)化為數(shù)組,數(shù)組元素存儲各項的數(shù)據(jù)寬高絕對定位偏移值透明度以及層疊參數(shù),在模板處遍歷實際項目的數(shù)組,其樣式則通過索引獲取對數(shù)組的元素數(shù)據(jù)。 同事拿到個設(shè)計稿,是旋轉(zhuǎn)木馬的輪播效果,于是網(wǎng)上找了一下,發(fā)現(xiàn)了jquery實現(xiàn)的效果,一有空就看看源碼,研究其實現(xiàn)原理,想著用vue的數(shù)據(jù)驅(qū)動方式來實現(xiàn)一個,但這個效果跟以往做的d...
閱讀 2306·2021-11-24 09:39
閱讀 2550·2021-11-22 15:24
閱讀 2989·2021-09-02 09:48
閱讀 3032·2021-07-26 22:01
閱讀 1444·2019-08-30 11:09
閱讀 1683·2019-08-29 18:47
閱讀 615·2019-08-29 15:40
閱讀 2142·2019-08-29 15:22