Loading...
blizzardcon10 avatar blizzardcon10 11 Точки

Data Structures In Java

Добър ден, колеги! Захванах се да си имплементирам свързан списък на Java.. Всичко си работи перфектно, но реших да си направя и дневник(имплементиран върху хеш таблица).. И понеже нямаме Generic Arrays (тоест, не можем да направим LinkedList<String>[]), съм направил следното:

private LinkedList<KeyValue<TKey, TValue>>[] slots;

и в конструктора:

 public MultiDictionary(int capacity) {

this.slots = (LinkedList<KeyValue<TKey, TValue>>[]) new Object[capacity];

}

Проблемът е, че още при самата инициализация гърми.. Ще съм много благодарен ако можете да ме "светнете" как да го оправя..

LinkedList<T> http://pastebin.com/Lh1s9qqT
LinkedListNode<T> http://pastebin.com/J9WLKUaa
KeyValue<TKey, TValue> http://pastebin.com/tLp08X6F
MultiDictionary<TKey, TValue> http://pastebin.com/GV6V2fiP

Тагове:
0
Java Advanced
blizzardcon10:
За да пусна тема със същото заглавие..
krach avatar krach 65 Точки

В кой клас ти дава проблем и на кой ред? Като ти изкопирах кода в проект в еклипс в класа MultiDictionary на 103 ред ми дава тази грешка

The method getRootNode() is undefined for the type LinkedList<KeyValue<TKey,TValue>>

А конкретно кода е:
  LinkedListNode<KeyValue<TKey, TValue>> currentNode = slotElements.getRootNode();

За да се компилира, класа LinkedList го преименувах на MyLinkedList. Подозирам, че е ставало конфликт с имената, но следващата грешка която ми даде е при изпълнение -  [Ljava.lang.Object; cannot be cast to [Ltst.MyLinkedList; в  MultiDictionary.java:13)

За това пропъртито slots, го направих на Object[] и вече каствах към ((MyLinkedList<KeyValue<TKey, TValue>>)

Не знам дали съм ти бил полезен, но ако кажеш къде и каква грешка ти дава пак ще погледна.

Ето линк към твоите класвое с промените които съм направил. В класа MultuiDictionary метода addOrReplace съм го закоментирал само за да не ми дадва грешки понеже не съм го преправял него. Добавил съм и тест клас в който тествах.

Създаване на обект от тип MultiDictionary както и add и get метода работят, поне това което тествах.

http://http://tranzit.dir.bg/load.php?id=Z98gHF1dPzHvCytb2425895

2
19/09/2015 09:09:28
blizzardcon10 avatar blizzardcon10 11 Точки

Благодаря ще разгледам.. Това беше проблемът като цяло ([Ljava.lang.Object; cannot be cast to [Ltst.MyLinkedList; в  MultiDictionary.java:13).. Ще погледна как си го фикснал

0
blizzardcon10 avatar blizzardcon10 11 Точки

Линкът не се отваря.. 

Няма достъп до тази уеб страница

 

ERR_NAME_NOT_RESOLVED

0
krach avatar krach 65 Точки

След час ще съм пред компютъра и ще видя линка какво съм оплескал

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.