Код, который вы получили, совсем не похож на действительный J2ME, это полный жирный (J2SE) Java; В настоящее время J2ME не имеет обобщений, классов Collections или Comparable - проверьте наличие JavaDoc для MIDP 2 и CLDC 1.1 , компонентов J2ME. Ваша ошибка упоминает о них, поэтому определенно не пришла от J2ME, что говорит о том, что вы, возможно, делаете что-то принципиально неправильное в настройке вашего проекта?
Если вы хотите сделать это в J2ME, вам нужно написать функцию сортировки самостоятельно, потому что, насколько я могу судить, такой вещи не существует. Bubblesort будет проще всего писать, поскольку единственный способ, с помощью которого вы можете легко получить доступ к последовательным элементам хеш-таблицы, - это через Enumerations (посредством Scores.keys () и Scores.values ()). Предполагая, что вы хотите отсортировать свои действия в порядке возрастания на основе баллов (поплавков), с которыми они связаны, вам нужно что-то вроде:
boolean fixedPoint = false;
while (!fixedPoint)
{
fixedPoint = true;
Enumeration e = scores.keys();
if (!e.hasMoreElements()) return;
Object previousKey = e.nextElement();
while (e.hasMoreElements()) {
Object currentKey = e.nextElement();
if ((Float) scores.get(currentKey) > (Float) scores.get(previousKey)) {
swap(currentKey, previousKey);
fixedPoint = false;
}
previousKey = currentKey;
}
}
Кроме того, где-то вам нужно написать функцию подкачки, которая заменяет два элемента хеш-таблицы при наличии их ключей. Стоит отметить, что это НЕ самая быстрая реализация - пузырьковая сортировка не будет хорошей, если вы ожидаете иметь большие большие списки. С другой стороны, это очень легко с ограниченными инструментами, которые дает вам J2ME!