2016-05-20 6 views
-2

でHashMapの私はそのようなHashMapを持っている:スプリットのJava

[{cap=1, cop=1, amb=1, tota=1, ull,=1, de=1, ve=1, és=1, d'un=1, va=1, llançat=1, sola.=1, traça,=1, cega.=1, vailet=1, l'altre=1, d'esma=1, camí=1, se=1, un=1, massa=1, i=1, li=1, avançant=1, soca,=1, una=1, roc=1, el=1, buidar-li=1, vaca=1, se'n=1, la=1, en=1, altra=1, l'aigua,=1, topant=1, pel=1}, {abeurar-se=1, com=1, ses=1, no=1, amb=1, tota=1, cingles,=1, pels=1, ferm=1, solia,=1, mes=1, ve=1, és=1, tel:=1, sola.=1, ans=1, cega.=1, d'altres=1, les=1, comes,=1, font=1, a=1, companyes,=1, vegades=1, un=1, ha=1, per=1}] 

そして私は例えば4部でこのマップを分割したいと思います..

私はこれをどのように行うことができますか?

ありがとうございます!あなたがJava 8を使用していないと仮定すると

+2

あなたが「HashMapを分割」とはどういう意味ですか?どうやって?ルールは何ですか? – Tunaki

+0

たとえば、4つのサブマップ@Tunaki –

+0

@DavidLopezでハッシュマップを分割し、要素を4つのマップ間でどのように分散する必要がありますか?空のマップがすべてのマップのサブマップであり、マップがそれ自身のサブマップであるとすると、これらの曖昧な要件を満たすために元のマップと3つの空のマップを取ることができます。 –

答えて

2

、あなたがこのようなMapをあなたのサブを作成するために、それをフィルタリングし、その後自分のメインMap上で手動で反復処理する必要があります。

Map<String, Integer> mainMap = ... 
Map<String, Integer> subMap = new HashMap<>(); 
for (Map.Entry<String, Integer> entry : mainMap.entrySet()) { 
    if (some criteria here) { 
     subMap.put(entry.getKey(), entry.getValue()); 
    } 
}