我需要幫助將字符串數組列表「hashNumberStrg」的哈希碼存儲在另一個數組列表中。我的導師希望我們生成100萬個隨機整數,將它們轉換爲字符串,然後獲取每個字符串的哈希碼。有人可以幫助我生成哈希碼並將它們存儲到鏈接列表中嗎?以下是我迄今爲止:如何將字符串數組列表的哈希碼存儲在數組列表中
import java.util.*;
public class dataStuctures
{
public static void main(String[] args)
{
int MAXIMUM = 5;//initializing the maximum integer
int MINIMUM = 1;//initializing the minimum integer
Random randomGenerator = new Random();//initializing the generation of random integers
int range = MAXIMUM - MINIMUM + 1;//setting the range of integers from 1 to 1,000,000
ArrayList<Integer> randomNumbers = new ArrayList<Integer>(5);//initializing an ArrayList to store the generated random integers with the capacity of 1,000,000
//ArrayList<String> randomNumbersStrg = new ArrayList<String>();//initializing an ArrayList to store store the generated hashcodes into a string
for (int index = 1; index <= 5; ++index)//for loop to generate 1,000,000 random integers in a range from 1 to 1,000,000
{
int randomInt = randomGenerator.nextInt(range) + MINIMUM;
randomNumbers.add(randomInt);//storing randomly generated numbers in a vector
}//end of for loop for random number generation and storage in an ArrayList
System.out.println("random numbers= " + randomNumbers);
System.out.println("ArrayList size: " + randomNumbers.size());
ArrayList<String> randomNumbersStrg = new ArrayList<String>(randomNumbers.size());
ArrayList<String> randomNumbersHashCodes = new ArrayList<String>(randomNumbers.size());
for (Integer myInt : randomNumbers)
{
randomNumbersStrg.add(String.valueOf(myInt));
randomNumbersHashCodes.add(randomNumbersStrg.get(myInt));
}
// to test to make sure the integers converted
String first = randomNumbersStrg.get(0);
System.out.println("hash codeest = " + first.hashCode());
String second = randomNumbersStrg.get(1);
String third = randomNumbersStrg.get(2);
String fourth = randomNumbersStrg.get(3);
String fifth = randomNumbersStrg.get(4);
System.out.println("\nfirst = " + first);
System.out.println("second = " + second);
System.out.println("third = " + third);
System.out.println("fourth = " + fourth);
System.out.println("fifth = " + fifth);
List<String> linkedList = new LinkedList<String>();//initializing Linked List
linkedList.addAll(randomNumbersStrg);//adding generated hashcodes to Linked List
}//end of main method
private static long[] randomNumbers(int index2)
{
// TODO Auto-generated method stub
return null;
}
}
在java中,每個對象都有一個返回int的hashCode()方法。只需創建另一個ArrayList並存儲每個字符串的hashCode()的結果。 –
您可以創建另一個數組列表並使用您存儲在原始數組列表中的數字來獲取哈希碼嗎?我可以從數組列表randomNumbersStrg調用字符串嗎? – Cfs0004
你需要一切嗎?我的意思是如果你需要除哈希碼以外的原始數字和這些數字的字符串版本,或者如果你只是使用哈希碼就可以。 –