Java- liste füllen ud die werte addieren

java3690

java3690

Mitglied
hey leute,
ich habe hier dieses Programm. Dies muss zahlen zufällig in eine Liste reinpacken und diese dann addieren und die Summe ausgeben.
Mein Ansatz sah so aus:



import java.util.ArrayList;

import java.util.Random;


public class Hausaufgabejan {

public static void aufgabe() {

Random r = new Random();

ArrayList<Integer> list = new ArrayList<Integer>(1000);

for (int i = 1; i <= 1000; i++) {

list.add(r.nextInt(list.size() + 1), i);

}

long proof = 0;

for (int i = 0; i < list.size(); i++) {

System.out.println(list.get(i) );

proof += list.get(i);

}


System.out.println(proof);

}


}

Allerdings musste man mit einer normalen Liste arbeiten(also keine Arraylist) und mit while(list.hasAccess)
list.toFirst();
list.next;
arbeiten. Mein Ansatz sieht jetzt so aus :

public void aufgabe(){


Random r = new Random();
zahlenListe = new list();
for (int i = 1; i <= 1000; i++) {
int zufaelligePosition = r.nextInt(zahl);

list.toFirst();
for(int i =0;i<zufaelligePosition;i++){
list.next();
}
list.insert(zahl);


}
long proof = 0;
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i) );
proof += list.get(i);
}


}
und ich habe zwei Probleme
Das Programm kann weder (zahl) noch (list) erkennen.
kann wer mir sagen wo mein Fehler ist?
Danke im voraus
 
java3690

java3690

Mitglied
Was ist denn eine "normale" Liste?

List<> ist ein Interface und ArrayList<> implementiert dieses Interface. Ein Interface kann man nicht instanziieren.

Und verwende bitte Code-Tags, damit man dass besser lesen kann!
ja was ich damit meinte, dass schon eine ganz normal Java List existiert, und ich müsste die nehmen statt diie Arraylist anscheinend
zahlenListe = new list();
also wahrscheinlich mit was ähnlichem denk ich mal. (oben bei den Attributen steht auch private List<Integer> zahlenListe; ) und ich glaube die zahlen müssten dort eingefügt werden.
wäre das nicht möglich, dass mit so einer list arbeitet statt mit der Arraylist?

und zu den Code-Tags: bin noch neu hier weiß genau nicht wie man es macht sry
 
temi

temi

Top Contributor
ja ich habe mich wahrscheinlich falsch ausgedruckt, aber bei dem Link handelt es sich auf jeden Fall um unsere Vorgaben bzw was wir können sollen. wüsstest du wie das bei meinem Code oben einzusetzen wäre bzw was mein Fehler wäre.
Der Import muss passen und die Schreibweise, vergleiche kleines "l" und großes "L" am Anfang der Klasse, die du erzeugen möchtest.
 
kneitzel

kneitzel

Top Contributor
Also was wichtig ist:

a) Wie schon erwähnt wurde, habt Ihr wohl eine konkrete Klasse list, die ihr nutzen sollt. Da wir diese nicht kennen, können wir da nicht wirklich etwas zu sagen. Alles, was wir bisher wissen, ist: Es gibt Methoden toFirst und insert. Also bitte mehr Informationen liefern, wenn Du hier Hilfe von uns erwartest!
Da er die "list" nicht kennt: Heisst die klasse evtl. List? Oder heisst die Klasse list und Du hast nur das list.java nicht dabei oder es ist in einem anderen package und eine import Anweisung fehlt? Oder oder oder ...

b) Du nutzt da einfach eine Variable zahl, die nirgends definiert ist. Was soll denn zahl sein? Ich vermute, die Zahl, die eingefügt werden soll an einer zufälligen Stelle (und die auch angibt, die wievielte Zahl nun eingefügt wird). Und das wäre dann ja die Zählvariable der äußeren Schleife ...
 
java3690

java3690

Mitglied
Also was wichtig ist:

a) Wie schon erwähnt wurde, habt Ihr wohl eine konkrete Klasse list, die ihr nutzen sollt. Da wir diese nicht kennen, können wir da nicht wirklich etwas zu sagen. Alles, was wir bisher wissen, ist: Es gibt Methoden toFirst und insert. Also bitte mehr Informationen liefern, wenn Du hier Hilfe von uns erwartest!
Da er die "list" nicht kennt: Heisst die klasse evtl. List? Oder heisst die Klasse list und Du hast nur das list.java nicht dabei oder es ist in einem anderen package und eine import Anweisung fehlt? Oder oder oder ...

b) Du nutzt da einfach eine Variable zahl, die nirgends definiert ist. Was soll denn zahl sein? Ich vermute, die Zahl, die eingefügt werden soll an einer zufälligen Stelle (und die auch angibt, die wievielte Zahl nun eingefügt wird). Und das wäre dann ja die Zählvariable der äußeren Schleife ...
Java:
mport java.util.Random;




public class HausaufgabeVorlage {

    /*
     *********************************************
     ***           Attributes           **********
     *********************************************
     */

    private List<Integer> zahlenListe;
    private Random zufall;
    /*
     **********************************************
     ****           Constructors         **********
     **********************************************
     */

    public HausaufgabeVorlage(){
        zahlenListe = new List();
        zufall = new Random();
    }


    /*
     ***********************************************
     ***           Public methods       ************
     ***********************************************
     */

    /**
     * Nutzen Sie diese Methode, um Ihre Aufgabe zu bearbeiten
     */
    public void aufgabe(){

 
        Random r = new Random();
        zahlenListe = new list();
        for (int i = 1; i <= 1000; i++) {
            int zufaelligePosition = r.nextInt(zahl);

list.toFirst();
for(int i =0;i<zufaelligePosition;i++){
     list.next();
}
list.insert(zahl);


        }
        long proof = 0;
        for (int i = 0; i < list.size(); i++) {
           System.out.println(list.get(i) );
            proof += list.get(i);
        }


}
}


so sieht die Vorlage aus . Vielleicht könntest mehr damit anfangen.
und wir sollte ich zahl definieren( wie du gesagt hast. Es ist die zahl die an einer zufälligen position eingefügt werden soll).
 
kneitzel

kneitzel

Top Contributor
Das hilft noch nicht wirklich weiter:
a) Immer die ganze Datei zeigen. Der Anfang ist abgeschnitten! Evtl. hat man ja einen Import auf eine List Implementation so dass man da dann sehen kann, was für ein List da erwartet wird.
b) Achte auf die Gross-/kleinschreibung! Der Konstruktor zeigt ja: Die Klasse heißt List und nicht list, wie Du dann später geschrieben hast. Und wenn die Varable zahlenListe bereits im Konstruktor initialisiert wird, dann musst Du es später nicht noch einmal machen.
c) Bezüglich zahl habe ich ja bereits auf "Zählvariable der äußeren Schleife" hingewiesen. Was wäre das denn?

Oder vielleicht fängst Du noch einmal ganz am Anfang an. Vergiss den Code! Schreib in eigenen Worten möglichst genau auf, was der Code machen soll. Also in eigenen Worten und das mit möglich vielen Details. Also Dinge herunter brechen bis hin zu kleinen Details, die dann trivial sind für Dich. (Da muss dann die Implementierung auch klar sein!)

Nehmen wir einfach ein Beispiel: Haus abreissen:
Du kannst da ein "Haus Abreissen" als ein Punkt haben, der getan werden muss.
Das verfeinerst Du dann, weil Du halt von Oben nach Unten Etage für Etage durchgehen willst um dann die gewählte Etage abzureissen.
Das verfeinerst Du dann: Etage abreissen ist halt: Erst die Decke zertrümmern, Trümmer entsorgen, Wände zertrümmern, Trümmer entsorgen"
Wie Du do eine Decke zertrümmerst kannst du dann weiter aufgliedern - da nimmst Du von mir aus einen großen Bagger mit so einem Presslufthammer dran. Für die Wände nimmst Du so einen Bagger mit so einer Art Schere dran ...
 
temi

temi

Top Contributor
Java:
    public HausaufgabeVorlage(){
        zahlenListe = new List();
        zufall = new Random();
    }

Hier wird die Liste ja bereits im Konstruktor der Klasse initialisiert. Du kannst also sofort mit "zahlenListe" arbeiten. Genauso ist es mit "zufall". Du brauchst keinen zusätzlichen Zufallsgenerator. Nimm den, der schon da ist.
 
P

Panda9296

Bekanntes Mitglied
Wie schon gesagt, List<> ist "nur" ein Interface, du musst schon eine konkrete Implementation z.B. ArrayList der Variablen zuweisen.


Gleich das erste Symbol im Beitragseditor ;)
ja aber wenn ich das wie ein Objekt schreibe, ist das wie so eine innere Klasse, in der du alle Methoden implementierst
 
temi

temi

Top Contributor
aber wenn ich das wie ein Objekt schreibe, ist das wie so eine innere Klasse, in der du alle Methoden implementierst
Keine Ahnung, was du meinst.
Java:
public class HausaufgabeVorlage {

    private List<Integer> zahlenListe; // das sind Instanzvariablen
    private Random zufall;

    public HausaufgabeVorlage(){
        zahlenListe = new List(); // die hier initialisiert werden
        zufall = new Random();
    }

    public void aufgabe(){
    
        int zufaelligeZahl = zufall.nextInt(); // und hier kannst du sie verwenden
    
    }
}
 
kneitzel

kneitzel

Top Contributor
Ich denke er meint eine anonyme Klasse, die List implementiert.... da hast du ja den new Operator wie gehabt, nur eben folgt nach dem Konstruktor noch in geschweiften Klammern die Implementation der Klasse.

Aber das wird hier nicht gefordert sein. Ich vermute, dass vorher eine einfach verkettete Liste durchgenommen wurde und diese wird nur weiter verwendet ....
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
V_Fynn03 Beliebiges Element in einer Liste löschen (Java)(Lineare Datenstrukturen) Java Basics - Anfänger-Themen 9
K Liste in Java? Java Basics - Anfänger-Themen 5
D Input/Output Zeilen aus txt-datei in Java-Liste einfügen Java Basics - Anfänger-Themen 9
G Liste mit Java-Befehlen? Java Basics - Anfänger-Themen 7
I Liste in Java (Chat-Frage) Java Basics - Anfänger-Themen 3
S Java zeigt immer nur das letzte Objekt der Liste Java Basics - Anfänger-Themen 4
Z Liste von Java-Befehlen? Java Basics - Anfänger-Themen 8
S Sprung mit Java (GameGrid) Java Basics - Anfänger-Themen 9
Devin Wie lange braucht man um Java zu beherrschen und wie kann man es am schnellsten erlernen? Java Basics - Anfänger-Themen 7
G Java Klassen und Instanzmethoden Java Basics - Anfänger-Themen 15
Zrebna Frage zum "Referenzen-konzept" in Java Java Basics - Anfänger-Themen 8
C java.util Timer läuft zu langsam? Java Basics - Anfänger-Themen 1
T Klassendiagramm in Java überführen Java Basics - Anfänger-Themen 2
Gaudimagspam Caesars Code entziffern in Java Java Basics - Anfänger-Themen 8
V Gehalt berechnen in Java Java Basics - Anfänger-Themen 6
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
P Mit iPad Java lernen Java Basics - Anfänger-Themen 15
W Java in Exe Datei umgewandelt, Ressourcen fehlen (Bilder und Audiodateien) Java Basics - Anfänger-Themen 1
N Best Practice How can I creat a programm with java under windows 10 in order to open an spreadsheet in libreoffice calc format Java Basics - Anfänger-Themen 11
T Start-Activity für Java Maven Web-Anwendung festlegen Java Basics - Anfänger-Themen 2
J Java FX - Label aktualisieren Java Basics - Anfänger-Themen 1
A Hilfe bei Java Projekt Java Basics - Anfänger-Themen 4
G Java Bruchrechner Addition, Multiplikation... Java Basics - Anfänger-Themen 12
M Java Einstellung von Apache POI für MS Word Erstellung mit Eclipse Java Basics - Anfänger-Themen 6
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
T Java Swing - Dreieck zeichnen mit verschiedenen Variablen Java Basics - Anfänger-Themen 8
P Wie für EIN Java Programm von 64bit Java (=Standard) auf 32bit Java Installation (Windows) umschalten? Java Basics - Anfänger-Themen 6
C Suche Nachhilfe in Java Java Basics - Anfänger-Themen 5
B java.io.OutputStream zu java.io.InputStream konvertieren Java Basics - Anfänger-Themen 18
A Scanner Befehl Java Anfänger Java Basics - Anfänger-Themen 8
M Java entity und wertklassen Java Basics - Anfänger-Themen 2
G Java Vererbung Java Basics - Anfänger-Themen 8
M Java Klasse Object Java Basics - Anfänger-Themen 5
M Java GUI label ändert sich erst zum Schluss Java Basics - Anfänger-Themen 4
G Java Lambda Ausdrücke Java Basics - Anfänger-Themen 19
M Java GUI explorer aufrufen um Pfad zu bekommen Java Basics - Anfänger-Themen 3
M Java Anweisungen Java Basics - Anfänger-Themen 4
M Java 8 Lambda Expression Java Basics - Anfänger-Themen 1
S Java Array Probleme Java Basics - Anfänger-Themen 3
Mr_Kleeblatt Operatoren if (arri[i] != "test.java"&& arri[i] != "test.class") Java Basics - Anfänger-Themen 3
S Java Stream API Java Basics - Anfänger-Themen 6
S Java Array Problem... Java Basics - Anfänger-Themen 2
M Java Listen Java Basics - Anfänger-Themen 4
G Java Object value und entity? Java Basics - Anfänger-Themen 2
X Kurzes Java-Programm, das sich komisch verhält Java Basics - Anfänger-Themen 6
_Zabuza_ Erste Schritte Wie am effektivsten Java lernen als Anfänger? Java Basics - Anfänger-Themen 12
G Java Dateisystem Java Basics - Anfänger-Themen 4
G Java charAt Methode Java Basics - Anfänger-Themen 10
L Java lernen Java Basics - Anfänger-Themen 1
G Rot-Schwarz-Bäume Java Java Basics - Anfänger-Themen 10
G Java LinkedList remove Methode Java Basics - Anfänger-Themen 5
G Java LinkedList Java Basics - Anfänger-Themen 6
G Java eingelesene Zahlen Java Basics - Anfänger-Themen 2
Y Java andere Klasse aufrufen Java Basics - Anfänger-Themen 6
I Java zweidimensionales array befüllen mit for-schleife Java Basics - Anfänger-Themen 2
Z vereinfachtes Wörterbuch in java modellieren Java Basics - Anfänger-Themen 10
L Zufälliges Objekt aus der ArraylList ohne java.util.Random Java Basics - Anfänger-Themen 56
S Geht das bei Java ? Java Basics - Anfänger-Themen 11
T Java Anfänger mit konkreten Fragen Java Basics - Anfänger-Themen 2
C Java Spiel Java Basics - Anfänger-Themen 3
R Java SQL Fehler! Java Basics - Anfänger-Themen 4
CT9288 Fragen zu Java Java Basics - Anfänger-Themen 16
M Java Version Verständnisfrage Java Basics - Anfänger-Themen 16
G Java equals() Methode Java Basics - Anfänger-Themen 9
G Java Objekte auf Duplikate testen Java Basics - Anfänger-Themen 4
D Java Einstieg Java Basics - Anfänger-Themen 4
K Java Projekt Hilfe Java Basics - Anfänger-Themen 5
B Java Mail -> Mail senden, ist aber nich in IMAP unter "Gesendet" Java Basics - Anfänger-Themen 3
jmar83 Bluetooth-Zugriff, braucht es dazu plattformabhängige Libraries oder kann das Java mittlerweile selbst? Java Basics - Anfänger-Themen 10
E Macht Java Rechenfehler beim Potenzieren und Mod? Java Basics - Anfänger-Themen 5
F Java GUI-PaintComponent funktioniert nicht Java Basics - Anfänger-Themen 1
Z Methode zum Heraufinden von Anagrammen ohne Java API, Ausnahme String Java Basics - Anfänger-Themen 14
K Java Aufgaben-Wie ran gehen? Java Basics - Anfänger-Themen 6
S Kreisberechnung3 Buch: Programmieren lernen mit Java von Hans-Peter Habelitz Java Basics - Anfänger-Themen 39
V Ersätze für Java-Scanner Java Basics - Anfänger-Themen 9
M Quiz in Java programmieren mit Array Java Basics - Anfänger-Themen 8
D java.lang.NullPointerException Java Basics - Anfänger-Themen 19
J Welche Java-Version installieren Java Basics - Anfänger-Themen 9
A Java.util.Arrays Java Basics - Anfänger-Themen 15
X Reverse algorithm engineering (Java code) Java Basics - Anfänger-Themen 6
C Wie habt Ihr angefangen mit der Java Programmierung, ohne Programmiervorkenntnisse Java Basics - Anfänger-Themen 8
G JAVA Einstieg Java Basics - Anfänger-Themen 26
F java.util.ArrayList Java Basics - Anfänger-Themen 3
I Java Klassen "Graphics" und "MouseEvent" kombinieren Java Basics - Anfänger-Themen 7
C Methoden Java ist auch eine Insel Listing 2.40 Recursion Java Basics - Anfänger-Themen 7
A Java . punkt neben einer Zahl. Java Basics - Anfänger-Themen 1
G Java-Programm Terminal Java Basics - Anfänger-Themen 2
K Failed to create the Java Virtual Machine Java Basics - Anfänger-Themen 1
T Java Intent Java Basics - Anfänger-Themen 12
G Java Binärer Suchbaum Java Basics - Anfänger-Themen 1
N Java CSV Datei auslesen Java Basics - Anfänger-Themen 6
K Java Anfänger Java Basics - Anfänger-Themen 5
Dimax In Java File (nicht in Java Projekt) mysql Driver importieren Java Basics - Anfänger-Themen 3
M Java Rekursion Java Basics - Anfänger-Themen 9
K Java programmieren Java Basics - Anfänger-Themen 6
G Java Abstrakte Methoden Java Basics - Anfänger-Themen 2
J Java TextArea Text bei hinzufügen makieren Java Basics - Anfänger-Themen 1
D Java Scanner Java Basics - Anfänger-Themen 9
G Java LinkedList Java Basics - Anfänger-Themen 3
G Java Listen und Iterator Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Anzeige

Neue Themen


Oben