Java - neue und gute Antworten - Seite 5

  • 0
    Java, Abitur "listen klasse", wie kann man denn ein Objekt zum aktuellen Objekt machen?
    Antwort von ArchEnema ArchEnema

    Wenn du mit append(o) Elemente zur Liste hinzufügst wird doch first gesetzt. Dann kannst du mit toFirst() current mit dem ersten Element belegen.

  • 0
    Java, Abitur "listen klasse", wie kann man denn ein Objekt zum aktuellen Objekt machen?
    Antwort von Infam0usLight Infam0usLight

    Wo genau soll die Methode implementiert werden, innerhalb der List Klasse, oder in einer neuen Klasse?

    Hier hab dir mal ne Beispiellösung geschrieben:

    http://pastebin.com/y3fMgtbF

    Kann man natürlich noch schöner gestalten und muss nicht unbedingt iterativ, sondern kann auch rekursiv die Aufgabe erfüllen. Ich wollt die aber erst mal die einfachste Lösung aufzeigen, wie du das schlussendlich realisiert bleibt dir überlassen

    Kommentar von Lirafoli LirafoliLirafoli

    in einer neuen klasse, die dann eine liste erstellt.

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Na dann hab ich dir sogar die komplette Lösung geschrieben ;)

    Packs dir noch in ne schöne Methode und fertig biste.

    Kommentar von Lirafoli LirafoliLirafoli

    danke schonmal, aber was ist bei dir o? und was genau ist integer? (hab noch nicht lange informatik^^) oder ist damit i gemeint?

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Mit o speichere ich mir eine Refferenz des aktuellen Objektes in der Liste.

    Integer ist der primitive datentyp int in Objektform.

    Quasi eine Zahl in Form eines Java-Objekts.

    Wenn du weitere Fragen haben solltest, schreib mich am besten an, wird sonst etwas viel für diesen Thread hier ;)

  • 0
    Java, Abitur "listen klasse", wie kann man denn ein Objekt zum aktuellen Objekt machen?
    Antwort von Sascha211 Sascha211

    Auf das aktuelle Object wird mit der Methode getObject() zugegriffen (Zeile 129), diese Methode liefert null, falls keine aktuelles Objekt vorhanden ist. Ob es ein aktuelles Objekt gibt, kannst Du mit hasAccessU() [Zeile 85] erfragen.

    toFirst() setzt die Liste auf ihr erstes Element zurück, danach kann man durch die Liste durchgehen (mit next() ) und alle Elemente nacheinander lesen.

    Kommentar von Lirafoli LirafoliLirafoli

    das ist mir alles klar, aber wenn ich eine neue liste erstellt habe + einige objekte in der liste, dann habe ich noch kein aktuelles objekt und toFirst usw. sollte zwar eigentlich das erste objekt zum aktuellen objekt machen, aber wenn ich das mache und mir anschließend mit inspect angucke was das aktuelle objekt fürn wert hat, steht da immer nur null.

  • 0
    Java, Abitur "listen klasse", wie kann man denn ein Objekt zum aktuellen Objekt machen?
    Antwort von Chroz192 Chroz192

    Ist das generische Programmierung? Falls ja, musst du, zumindest in C++, mit iteratoren arbeiten.

    Bsp (C++):

    list<int> List;
    
    list<int>::iterator ListenIter; //ListenIterator
    
    for(int i=0;i<=7;i++)
    {
    List.push_back(5 * i); //Liste füllen
    }
    
    //Liste ausgeben: Dereferenzierungsoperator * nicht in Java!!
    for(ListenIter = List.begin(); ListenIter != List.end(); ListenIter++)
    { cout << *ListenIter << endl; }
    
    //neuer iterator + find methode
    
    list<int>::const_iterator cListenIter = find(List.begin(), List.end(), 10);
    //Konstanter ListenIterator zeigt auf Position, wo 10 zum ersten mal gefunden wurde, ansonsten auf end()
    
    if(cListenIter != List.end())
    {
    cout << "Element mit Wert " << *cListenIter << " gefunden!" << endl;
    }
    
    Kommentar von Chroz192 Chroz192Chroz192

    Soll dir nur das Prinzip von Iteratoren erklären :-)

    Kommentar von Lirafoli LirafoliLirafoli

    naja, das prinzip von diesem "zeiger" wenn ichs mal so nennen darf, hab ich schon verstanden. aber mir gehts halt darum, das ich den nicht bewegen kann bzw. das er nie auf ein objekt zu zeigen scheint, auch wenn ich mehrere erstellt habe und dann "toFirst" o.ä. benutze.

    Kommentar von simsch1996 simsch1996simsch1996

    zeiger gibt es in java nicht! es gibt nur referenzen und die sind wirklich unflexibel^^

    Kommentar von Lirafoli LirafoliLirafoli

    unser lehrer hat das mit einem "zeiger" verglichen, der immer auf ein bestimmtes objekt in der liste "zeigt", mit diesem objekt stellt man dann halt irgendwelche sachen an. aber bei mir ist der zeiger schon mal irgendwie gar nicht vorhanden und lässt sich auch nicht mit Tofirst usw. herbei holen :(

    Kommentar von simsch1996 simsch1996simsch1996

    wie ich auch oben geschrieben hab, ohne deinen quelltext lässt sich das schwer einschätzen ;) aber der unterschied zwischen zeiger und referenz ist nicht unerheblich, auch wenn es gerade glaube ich nicht ausschlaggebend ist ;)

    Kommentar von Lirafoli LirafoliLirafoli

    was ist denn eine referenz?

    Kommentar von simsch1996 simsch1996simsch1996

    in java ist das relativ einfach, es ist nämlich das von dem du als zeiger sprichst ;) eine referenz in java verweist einfach auf etwas, nicht mehr und nicht weniger^^

    wenn du von zeigern sprichst enthält ein zeiger die speicheradresse eines objekts^^ dieser zeiger kann dereferenziert werden um mit dem objekt an sich zu arbeiten. aber eine referenz ist nur ein aliasname des objekts auf basis der speicheradresse ;)

    Kommentar von simsch1996 simsch1996simsch1996
    Kommentar von Chroz192 Chroz192Chroz192

    Java ist einfache eine unattraktive Sprache, mehr fällt mir dazu nicht ein. Soetwas sollte man nicht an Schulen lehren.

    Kommentar von Lirafoli LirafoliLirafoli

    was denn dann für eine sprache?

  • 0
    Wie kann ich minecraft mehr RAM zuweißen? Es stürtzt ständig ab!
    Hilfreichste Antwort von TheTop10TB TheTop10TB

    Du musst Minecraft nicht unbedingt mehr RAM zuweisen es reicht schon aus wenn du Grafikeinstellungen im Spiel veränderst: Sichtweite:Winzig Grafik:Schnell Weiche Beleuchtung:Aus Dann installiere dir noch ein 8 Pixel Texture Pack und installiere dir Optifine: http://www.minecraftforum.net/topic/249637-125-optifine-hd-b1-fps-boost-hd-textu... MFG TheTop10TB

  • 0
    Java-Programm in Eclipse mit HTML verknüpfen
    Antwort von simsch1996 simsch1996

    http://www.java.com/de/download/faq/java_webstart.xml

    wenn es ein normales programm ist ist das wohl die lösung ;)

    ansonsten applets, wie schon erwähnt^^

  • 1
    Java, Abitur "listen klasse", wie kann man denn ein Objekt zum aktuellen Objekt machen?
    Antwort von simsch1996 simsch1996

    was isn das für ne komische sache? ;) kannst du mal nen link posten? dazu muss es eine doku geben, das kann sonst kein mensch wissen ;)

    Kommentar von Lirafoli LirafoliLirafoli

    http://www.standardsicherung.nrw.de/abitur-gost/fach.php?fach=15

    hier müsste man sich dann

    Quelltexte zu den Materialien ab 2012 - Java-Version 1.2 - [ZIP, 145 kB] - 9.01.2012

    runterladen. da sind dann auch diese listen usw. dabei.

    Kommentar von simsch1996 simsch1996simsch1996

    also erstmal hast du mein vollstes mitleid^^ ihr arbeitet echt mit diesem dr*cks bluej!?

    okay wenigstens sind die leute dann so sozial, aufwendige standardimplementierungen zur verfügung zu stellen ;)

    ich sag dir jetzt mal nicht zu viel, denn das wird im abitur eine der wichtigsten sachen sein, die doku zu lesen und zu verstehen, vor allem nachdem du da ja auf dem papier arbeiten musst ;)

    ich habs jetzt grade mal angeschaut, und wenn ich das so sagen darf, das ist totaler mist^^ zeig das deinem lehrer, nach meinem ermessen ist die doku am a*sch^^

    und dieses client-server dings hab ich mit 13 in c# gebaut, wollt ich nur noch dazusagen ;)

    du hättest jetzt die möglichkeit die javadoc nochmal komplett neu zu erstellen oder du schlägst dich durch die comments im quelltext ;) hab ich jetzt keine zeit aber wenn ich dazukomme schreib ich nochmal ;)

    Kommentar von Lirafoli LirafoliLirafoli

    naja, also ich bin im moment in der 10 und werde mich da wohl nicht allzu bald im abi damit rumschlagen müssen. unser lehrer dachte wohl, nach arrays + arraylists würde das ganz gut in die thematik passen.

    Kommentar von simsch1996 simsch1996simsch1996

    ich bin auch in der 10. ;) aber das bayerische info-abi macht iwie mehr sinn^^ :D

    ich habs jetzt doch noch kurz durchgeschaut^^ es ist eine ganz normale liste^^ kannst du mal deinen quelltext auf patebin o. ä. packen, vlt kann man sehn was schiefläuft ;)

    Kommentar von Lirafoli LirafoliLirafoli

    was ist patebin?

    und mein quelltext existiert noch praktisch nicht, unser lehrer wollte uns nur in dieses abitur listen zeugs einführen, wir sollen ne liste erzeugen mit zahlen, und methoden die die anzahl der zahlen und die summe der zahlen zurückliefern.

    in dem code steht mehrfach was von "tail", ich vermute mal das ist der zeiger. aber mit dem dingen lässt sich original gar nichts anfangen.

    Kommentar von simsch1996 simsch1996simsch1996

    sorry, ich hab n s vergessen ;) soll pastebin heißen (http://pastebin.com/)

    du musst doch irgendeinen quellcode haben, sonst hättest du ja nichts was nicht funktioniert ;) ich kann nur beim besten willen nicht sagen woran das liegt weil ich zwar die liste kenne aber nicht weis wie du sie benutzt ;)

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Ohne mich jetzt groß mit dem ganzen Thread hier beschäftigt zu haben, frag ich einfach mal:

    Ist deine Aufgabe jetzt lediglich eine eigene Implementierung einer ArrayList oder generell einer List zu schreiben? Wenn nicht, würde ich dich darum bitten eine präzise Aufgabenstellung zu posten.

    Kommentar von simsch1996 simsch1996simsch1996

    es geht so weit ich das überblicke um die verwendung einer bereits fertigen implementierung eines solchen liste^^

    Kommentar von Lirafoli LirafoliLirafoli

    ich soll:

    • eine liste mit zahlen 1-10 (1-10 nur zu demonstrationszwecken) erzeugen (aber keine array list oder so, sondern mit diesem abitur quellcode).

    • eine methode implementieren, die die anzahl der bisher in die liste eingetragenen zahlen zurückliefert

    • eine methode implementieren, die die summe aller bisher eingetragenen zahlen zurückliefert.

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Ist es zwingend notwendig, dass du dich an die Vorlage der "abitur klasse" hältst, oder darfst du auch eine eigene Implementierung vornehmen?

    Ohne den Quellcode gesehen zu haben, ist das vorhaben ja relativ einfach. Wenn die Klasse selbst keine Methode bereitstellt, die die Anzahl der Objekte zurückliefert, oder durch diese iteriert, hast du nun zwei Möglichkeiten dies zu verwirklichen.

    1. Die einfachste, wobei nicht unbedingt eleganteste Möglichkeit: Du hast eine count variable in der Klasse, die du jenachdem ob ein Objekt hinzugefügt wird inkrementierts(erhöhst) oder dekrementierst. Diesen count gibt du dir über eine einfache getter-methode zurück.

    2. Du schreibst eine Methode, die jeden Index in der List abfragt und prüft ob ein gültiges Objekt vorhanden ist. Das Ergebniss der gültigen Objekte lässt du dir zurückgeben.

    eine methode implementieren, die die summe aller bisher eingetragenen zahlen zurückliefert.

    Dies sollte, sofern du dich an 2. hältst ohne Probleme zu verwirklichen sein.

    Ich werde mir gleich noch den Quellcode der Klasse angucken, um zu sehen ob meine Vorschläge so überhaupt umsetzbar sind.

    Kommentar von simsch1996 simsch1996simsch1996

    es ist etwas tricky mit der klasse etwas zu erreichen, aber du könntest in die einzelnen methoden exceptions einbauen oder mit einem debugger z.b. in eclipse arbeiten^^

    grundsätzlich solltest du ja nach dem konstruktor eine leere liste vorfinden in die du dann per append() 10 integer anhängst (in einer schleife). so weit gemacht? und toFirst()?

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    es ist etwas tricky mit der klasse etwas zu erreichen, aber du könntest in die einzelnen methoden exceptions einbauen oder mit einem debugger z.b. in eclipse arbeiten^^

    Exceptions dürfen aber keines Falls zur Steuerung des Programmflusses dienen ;)

    Und die List ist ja furchtbar schlecht konzipiert! "tricky" ist gar kein ausdruck. Wer benötigt so eine Klasse?...

    Nichts desto trotz werd ich mich mal um eine Lösung kümmern.

    Kommentar von simsch1996 simsch1996simsch1996

    das mit den exceptions war eher zum debugging in bluej gedacht ;) nicht als persistente lösung sondern nur um angaben über fehlerursachen zu bekommen die man ohne vernünftigen debugger nicht sieht^^

    Kommentar von Lirafoli LirafoliLirafoli

    @ Infam0usLight

    ja, ich muss das mit dieser abitur listen klasse machen.

    @simsch ja, ich finde eine leere liste vor, in die ich dann 10 zahlen eintragen kann, diese kann ich mir auch über inspect angucken, allerdings steht der zeiger immer auf null, auch wenn ich toFirst oder so verwende.

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Hab dir ne Antwort geschrieben. Erstell dir einfach ne neue Klasse und führ den Code meinetwegen im Konstruktor aus. Sollte ohne Probleme funktionieren ;)

    Bei weiteren Fragen einfach melden.

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    doppel post

  • 0
    Wie kann ich minecraft mehr RAM zuweißen? Es stürtzt ständig ab!
    Antwort von SomOne SomOne

    Probier das mal aus: http://www.minecraftforum.net/topic/249637-125-optifine-hd-b1-fps-boost-hd-textu...

    Wenn du kein englisch kannst, google mal oder such auf youtube ne deutschssprachige anleitung dazu ...

  • 0
    Wie kann ich minecraft mehr RAM zuweißen? Es stürtzt ständig ab!
    Antwort von DDORFER DDORFER

    Windows Task Manager --> Prozesse --> den minecraft Prozess suchen (ist glaub ich iwas mit java....) ---> Priorität festlegen

    Generell mehr RAM zuweisen kann man glaub ich nicht, das sollte aber normalerweise auch helfen

  • 0
    felderdeklaration
    Antwort von Infam0usLight Infam0usLight

    Wo die Klammern bei der Deffinition des Arrays stehen, steht dir frei. Bei der Initialisierung müssen sie nach der Angabe des Types folgen.

    Richtig:

    int[] foo = new int[10];
    
    //oder auch
    
    int foo[] = new int[10];
    

    Falsch:

    int foo[] = new foo[10];
    

    Macht ja auch keinen Sinn. Du würdest dem Compiler hiermit sagen, dass er ein int-Array mit dem Namen foo deffinieren soll, schreibst bei der initialisierung aber, das er ein Array vom typen foo erstellen soll, den er soweit nicht selber irgendwo deffiniert, nicht kennt.

    Kommentar von chiccolo1 chiccolo1

    danke

  • 0
    felderdeklaration
    Antwort von MarkGreene MarkGreene

    Dein erstes Beispiel funktioniert so, das zweite nicht (zumindest nicht so wie du es willst).

    Der Grund ist das zuf nach dem new. Denn dort wird immer der Typ erwartet, die die Objekte des Felds/Arrays haben sollen und da du ein int-Array willst, muss dort auch int stehen.

    Die Klammersetzung ist Geschmackssache, es geht grundsätzlich so:

    typ[] name = new typ[groesse]
    

    oder so:

    typ name[]= new typ[groesse]
    

    Da solltest du dich trotzdem für eine Variante entscheiden und nicht in derselben Klasse immer wechseln, denn das ist verwirrend für alle die deinen Code lesen, dich eingeschlossen.

    Kommentar von chiccolo1 chiccolo1

    danke

  • 1
    felderdeklaration
    Antwort von dergutekoenig dergutekoenig

    Und von welcher Programmiersprache du sprichst, sollen wir erraten?

    Die Klammernsetzung ist, davon abgesehen, Geschmacksache (sofern die jeweilige Programmiersprache beide Varianten zulässt).

    Kommentar von chiccolo1 chiccolo1

    ich spreche von java auf bluej

    Kommentar von dergutekoenig dergutekoenigdergutekoenig

    Wie gesagt, falls Java beides zulässt (das weiß ich grade nicht auswendig), ist es Geschmacksache.

    Die einen benutzen int[] name, um deutlich zu machen, dass es sich um ein int-Array handelt, die anderen benutzen int name[], um deutlich zu machen, dass name ein Array ist.

    Kommentar von chiccolo1 chiccolo1

    könntest du mal nachsehen

    Kommentar von dergutekoenig dergutekoenigdergutekoenig

    Was nachsehen? Ob bei Java beides geht? Ähm... probier's doch einfach aus? +kopfschüttel+

  • 1
    felderdeklaration
    Antwort von DarkIrata DarkIrata

    C# oder CPP/C?

    Kommentar von chiccolo1 chiccolo1

    java

  • 0
    Java bracht mehr ram! Bitte helft mir!
    Antwort von TrueColorGb TrueColorGb

    Du musst java beim Start über die Kommandozeile mitgeben, dass es für die Anwendung mehr Speicher reservieren soll.

    Es gibt allerdings auch einen zentralen Ort, an dem du die Einstellung tätigen kannst: http://www.auditmypc.com/java-memory-xmx512.asp Diese darf dann natürlich nicht vom betreffenden Programm überschrieben werden.

  • 0
    Java: Prüfen ob Programm mit java.exe oder javac.exe gestartet wurde
    Antwort von Infam0usLight Infam0usLight

    Dann mal ne ernstgemeinte Gegenfrage meinerseits:

    Wieso genau möchtest du das machen? Die Konsole dient eigentlich nur dem Entwickler um Fehler im Programm zu finden, oder andere Meldungen darzustellen. Im fertigen Programm wird sie, bis auf wenige Aussnahmen nie verwendet.

    Schildere uns doch einfach was du genau machen möchtest und ich bin mir sicher man wird einen besseren Ansatz für das Problem, sofern es eins ist, finden.

  • 0
    cracked MC mit 64 bit java
    Antwort von Infam0usLight Infam0usLight

    Da du ja scheinbar meine Antwort zu deiner ersten Frage, zu dem Thema, gestern nicht kommentieren magst hier mal ein Link welcher das Problem behandelt:

    http://www.minecraftforum.net/topic/57538-mac-guide-106-how-to-make-minecraftapp...

    Achja, der link taucht gleich als erstes Suchergebniss unter google auf, wenn man dein problem googelt...

    Kommentar von Schlafanzugabc SchlafanzugabcSchlafanzugabc

    das is das erste mal das ich sehe das du mir ne antwort gibst :O

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Huch tatsächlich. Jemand hat gestern nämlich die gleiche Frage gestellt, war auch Fragant da dacht ich das wärst du :O

    So zieh ich meine Aussage natürlich zurück...

    Kommentar von Schlafanzugabc SchlafanzugabcSchlafanzugabc

    achso :D

    und eins habe ich auch vergessen zu erwähnen:

    ich habe windows 7 kein mac also funktioniert der link leider nicht :)

    trozdem danke

    Kommentar von Infam0usLight Infam0usLightInfam0usLight

    Die 64bit Version von Java hast du installiert?

    Dann versuchs mal hiermit:

    http://www.youtube.com/watch?v=Xc54-EvOb7Q&feature=related

    Kommentar von Schlafanzugabc SchlafanzugabcSchlafanzugabc

    danke nur muss ich das auch auf den desktop mache?

    kann ich nicht irgendwie in roaming und dann da was ändern und an meinen(cracked)minecraft launcher was ändern?

    ansonsten mache ich das so wie im video beschrieben :D

  • 0
    Java: Prüfen ob Programm mit java.exe oder javac.exe gestartet wurde
    Antwort von SyFed SyFed

    sry, meinte javaw.exe

  • 1
    Java: Prüfen ob Programm mit java.exe oder javac.exe gestartet wurde
    Antwort von Kruemelpastete Kruemelpastete

    javac ist nur für die Kompilation von Java-Dateien zuständig, damit lassen sich keine Programme starten.

    Kommentar von SyFed SyFed

    sry meinte javaw.exe

    Kommentar von Kruemelpastete Kruemelpastete

    Wenn ein Task vorhanden ist, dann kannst du - bei Windows zumindest - im Task Manager über einen Rechtsklick auf den Task zum Prozess wechseln, der dann entweder java.exe oder javaw.exe heisst. Ich denke, so sollte das funktionieren.

    Aber was ist eigentlich der Unterschied?

    Kommentar von SyFed SyFed

    javaw.exe ist mit Konsole

    Aber wie finde ich das in java raus? Einfach den Tasknamen abfragen oder gibts dafür noch andere methoden?

    Kommentar von Kruemelpastete Kruemelpastete

    Irgendwie kann das nicht ganz stimmen, dass nur aus der Konsole gestartete Programme mit javaw ausgeführt werden. Beispielsweise zeigt mir der Taskmanager bei Eclipse, was ja mit einer EXE gestartet wird, auch javaw.exe an.

    Kommentar von SyFed SyFed

    alter schonwieder vertan -> javaw ist ohne konsole -.-

  • 0
    Minecraft funktzt nich? Acer Predator
    Hilfreichste Antwort von ErsGuteHardware ErsGuteHardware

    Guten Tag,

    wichtig ist welche Hardware du genau verbaut hast denn von deinem Rechner habe ich allein in meinem Laden rund 3 verschiedene Modelle stehen. Also am besten mal Hardware hinschreiben, dann kann man dir sicherlich weiter helfen.

    Gehe ich mal von genug Leistung aus (BF3), Treiber neu installieren, Programme schließen die nicht sein müssen. Spiel patchen, Spiel neu installieren.

  • 0
    Minecraft funktzt nich? Acer Predator
    Antwort von Fabilord98 Fabilord98

    VL keine Internet Verbindung, neuestes Java installiert ??

    Kommentar von johannmaster johannmasterjohannmaster

    Internet ist verbunden, ich zock ja auch BF3 online

    Hab D-Lan

Die unter gutefrage.net angebotenen Dienste und Ratgeber Inhalte werden nicht geprüft. Die Richtigkeit der Inhalte wird nicht gewährleistet. Rechtliche Hinweise finden Sie hier.