Menu schließen

Android Java HIlfe bei Liste sortieren

Frage: Android Java HIlfe bei Liste sortieren
(3 Antworten)


Autor
Beiträge 2
0
Hallo
Ich brauche mal eure Hilfe
Habe eine ArrayListe mit verschiedenen Objekten wie Strings, Dates und Doubles.
2 Doubles sind jeweils die Breiten und Längengeraden.
Wie kann ich die Liste so sortieren das diese Daten mit meinem aktuellen GPS Standort abgeglichen werden und mir die nähesten angezeigt werden?
Danke!
Frage von helmut39 | am 26.05.2019 - 17:34


Autor
Beiträge 40243
2101
Antwort von matata | 26.05.2019 - 19:39
Kannst du die Liste ins nächste Antwortfeld einfügen,
dann weiß man wenigstens worum es geht...?
________________________
 e-Hausaufgaben.de - Team


Autor
Beiträge 2
0
Antwort von helmut39 | 27.05.2019 - 07:57
Ja sicher
Gier ein Auszug von 3 Listenelementen
mData.add(new
NewsItem("Zeltfest", "Band: Die Draufgänger, Uhrzeit 20:00 Uhr", "2019.07.23", R.drawable.b2, 46.8730600, 15.8252800, 0));
mData.add(new
NewsItem("Feuerwehrfest Wien", "Wien Bezirk 1", "2019.09.12", R.drawable.b2, 47.1422, 15.356, 0));
mData.add(new
NewsItem("Grillfest der FF St. Anna-Aigen", "Grillspezialitäten - Weinkost - Tanzmusik - Kellerdisco", "2018.01.01", R.drawable.b1, 36.140751, -5.353585, 0));

Die Letzte Zahl 0 ist ein double, sie soll mit dem Wert der Entfernung der berechnet werden soll ersetzt werden. Oder soll man es anders machen?


Autor
Beiträge 74
6
Antwort von Colirbi | 27.05.2019 - 12:05
Hallo,

es Fehlen noch ein paar Infos. Die Liste ist vom Typ NewsItem?

ArrayList<NewsItem> mData;

Du möchtest jetzt sortieren, aber Java weiß natürlich nicht wie ein Objekt vom Typ NewsItem sortiert werden soll, da es von dir implementiert wurde.

Sowas macht man in Java indem man die Klasse (NewsItem) von Comparable erben lässt. Dadurch bekommt sie eine Methode int compareTo(Object o) welche du dann selbst noch implementieren musst. Der Rückgabewert gibt dabei an ob das Objekt kleiner (-1), größer (1) oder gleich (0) ist, als das zu vergleichende Objekt.

Nun möchtest du die Liste abhängig von deinem Standort sortiert haben. Das heißt, dass du zunächst die Entfernung zu deinem Standort berechnen musst.

https://www.kompf.de/gps/distcalc.html

Du solltest also einmal deine komplette Liste durchgehen und die Entfernungen berechnen und in das aktuell noch leere Feld eintragen.

Dann schreibst du die compareTo so, dass bei allen Objekten die Entfernung verglichen wird. Danach kannst du die Liste mit
Collections . sort ( list ); sortieren lassen.

Verstoß melden
Hast Du eine eigene Frage an unsere Informatik-Experten?

57 ähnliche Fragen im Forum: 1 passende Dokumente zum Thema:
> Du befindest dich hier: Support-Forum - Informatik
ÄHNLICHE FRAGEN:
  • liste mit 10 ganzzahlen
    hoffe ihr könnt mir helfen Erstelle ein java-programm für eine liste mit 10 ganzzahlen und gib sie der reihe nach aus. danke
  • Android Betriebssystem --> Linux Kernel
    Hey Zsm Ich habe ein  Referat über das Betriebssystem von Android. Bis jetzt habe ich nur dass das Betriebssystem von ..
  • Java Datei Klasse List
    Hallo! Hat iwer eine Java Datei zur Klasse List mit den einzelnen Methoden? Dokumentation der Klasse List Konstruktor ..
  • Java / Java editor
    hi, kann jemand mir seiten sagen wo ich java runterladen kann ? ich hab java runtergeladen haben damit kann ich nix machen und ..
  • JAVA
    wo kann ich java für windows vista runterladen und wo find ich den Textpad? lg
  • methoden in java
    kann mir jemand methoden in java erklären ich check das nämlich irgendwie net :// und wir schreiben darüber bald ne klausur ..
  • mehr ...
BELIEBTE DOWNLOADS: