KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > archive > crawler > util > Sorts


1 /* Copyright (C) 2003 Internet Archive.
2  *
3  * This file is part of the Heritrix web crawler (crawler.archive.org).
4  *
5  * Heritrix is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU Lesser Public License as published by
7  * the Free Software Foundation; either version 2.1 of the License, or
8  * any later version.
9  *
10  * Heritrix is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU Lesser Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser Public License
16  * along with Heritrix; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  * Created on Jul 21, 2003
20  *
21  * To change the template for this generated file go to
22  * Window>Preferences>Java>Code Generation>Code and Comments
23  */

24 package org.archive.crawler.util;
25
26 import java.util.ArrayList JavaDoc;
27 import java.util.Arrays JavaDoc;
28 import java.util.HashMap JavaDoc;
29
30 public class Sorts {
31
32     // Sorts by value not key
33
public static StringIntPair[] sortStringIntHashMap (HashMap JavaDoc<String JavaDoc,Integer JavaDoc> hm){
34         String JavaDoc[] keys = hm.keySet().toArray(new String JavaDoc[hm.size()]);
35         Integer JavaDoc[] values = hm.values().toArray(new Integer JavaDoc[hm.size()]);
36
37         ArrayList JavaDoc<StringIntPair> unsortedList = new ArrayList JavaDoc<StringIntPair>();
38
39         for (int i = 0; i < keys.length; i++)
40             unsortedList.add(i, new StringIntPair(keys[i], values[i]));
41
42         StringIntPair[] sortedArray
43          = unsortedList.toArray(new StringIntPair[unsortedList.size()]);
44         Arrays.sort(sortedArray, new StringIntPairComparator());
45
46         return sortedArray;
47     }
48
49 }
50
Popular Tags