??
package com.codegym.task.task33.task3310;
import com.codegym.task.task33.task3310.strategy.*;
import java.util.*;
public class Solution {
public static Set<Long> getIds(Shortener shortener, Set<String> strings) {
Set<Long> set = new HashSet<>();
for (String str : strings) {
set.add(shortener.getId(str));
}
return set;
}
public static Set<String> getStrings(Shortener shortener, Set<Long> keys) {
Set<String> set = new HashSet<>();
for (Long l : keys) {
set.add(shortener.getString(l));
}
return set;
}
public static void testStrategy(StorageStrategy strategy, long elementsNumber) {
Helper.printMessage(strategy.getClass().getSimpleName());
Set<String> set = new HashSet<>();
Set<Long> set2 = new HashSet<>();
Set<String> set3 = new HashSet<>();
for (int i = 0; i < elementsNumber; i++) {
String testString = Helper.generateRandomString();
set.add(testString);
}
Shortener sr = new Shortener(strategy);
Date startD = new Date();
for (String string : set) {
set2.add(sr.getId(string));
}
Helper.printMessage(new Date().getTime() - startD.getTime() + "");
startD = new Date();
for (Long long1 : set2) {
set3.add(sr.getString(long1));
}
Helper.printMessage(new Date().getTime() - startD.getTime() + "");
if (set.containsAll(set3))
Helper.printMessage("The test passed.");
else
Helper.printMessage("The test failed.");
}
public static void main(String[] args) {
testStrategy(new OurHashMapStorageStrategy(), 10000);
}
}