S Android SDK som este nemal tu cest, ale zda sa mi to nejako malo, aby ti jedno vlakno obsluhovalo db a este sa staralo aj o prekreslenie obrazovky. Po dobu pocas posles query do SQLite a cakas na odpoved nemas ako prekreslovat. Cize aplikacia bude mat tendenciu nereagovat, aj ked asi to nebude postrehnutelne. Ale aj tak by som vytvoril viacero vlakien, alebo cely pool ak mas pren vyuzitie.
Příspěvky odeslané z IP adresy 158.195.196.–
Najlepsie ked si pozeres ako Bloch implementoval LinkedList v Jave. Ten kod je uhladne rozpiasny a mam pocit, ze to je podstatou toho cvicenia. http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/LinkedList.java. Ale to co tebe staci:
class SpojovySeznam<E>{
private class Node<E>{
E element;
Node prev, next;
public Node(E element, Node prev, Node next) {
this.element = element;
this.prev = prev;
this.next = next
}
public E element() {
return this.element;
}
public E remove() {
E ret = this.element;
if(prev != null)
prev.next = next;
if(next != null)
next.prev = prev;
next = null;
prev = null;
element = null;
return ret; // ide to aj cez try finally
}
}
private Node<E> first, last;
private int size;
// Konstruktor
public void vloz(E element) {
if (last == null){
first = new Node(element, null, null);
last = new Node(element, first, null);
first.next = last;
siez++;
} else {
Node<E> n = new Node(element, last, null);
last = n;
}
}
public E vyjmiPrvniho(){
Node next = firs.next;
E element = first.remove();
first = next;
return element;
}
public void vypisSeznam() {
Node<E> n = first;
if (n == null){
// Hodis vynimku o prazdnom liste.
// Tych vynimiek by sa tu hodilo viac ale nechcelo sa mi.
// Najlepsie ked pochopis, ako funguje LinkedList.
// Ten je napisany naozaj dobre.
}
while(n.next != null){
// Tu vypises co sa tam nachadza v danom node
n = n.next; // Skocis na dalsi node.
}
}
}
Su tam chyby, ale ma to sluzit iba ako demonstracia toho, ako to jednoducho vytvorit. A este som si vsimol ze som pouzitl generika. Staci aby si namiesto "E" dal "Object" a vsetky "<E>" vymazal.
A s cim konkretne mas priprepise do jazyka problem. Ako je v texte napisane musis si vytovrit objekt kabina, vytah a krabica. A vo vytahu bude metoda, ktora prevaza krabice, do tejto metody vlozis kod, ktory mas popisany v zadani. Samozrejme da sa to bez tych objektov, usudzujem podla toho ze si to dal pod kategoriu java. Inak zadanie neobsahuje nic o rozmere krabice a potom sa nan nepriamo odovlava vo vete: "Při zjištění, že krabice se do výtahu nevejde nebo by přesáhla celkovou hmotnost, je taková krabice zapomenuta".