ArrayListe ->liste.get

Status
Nicht offen für weitere Antworten.

coffeecup

Aktives Mitglied
Halli-Hallo!

Ich habe folgendes Problem:

Ich habe ein kleines Programm, welches mir ein Rechteck erstellen soll , dann dessen Fläche ausrechenen und überprüfen, ob es sich um ein Quadrat handelt:
Code:
package Rechteck;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


public class Rechteck {
	    
	private static int b,h,x,f ;
	static boolean q;

	
	public Rechteck(int h, int b) {
		super();
		this.h = h;
		this.b = b;
	}//dieser Part (public Rechteck) ist zwar nicht notwendig, aber ich brauche ihn für das 
                  //zweite Programm oder??
	
		public static void main(String[] args) 
		throws NumberFormatException, IOException
		{
			  
		
			BufferedReader dIn = new BufferedReader(
					new InputStreamReader(System.in));
			System.out.println("0=Eingabe der Parameter,1=Zufallszahlen");
			x=Integer.parseInt(dIn.readLine());
			
			if (x == 0) {
				System.out.println("Bitte geben Sie die gewünschte Breite ein(Zahl>0):");
				b = Integer.parseInt(dIn.readLine());
				System.out.println("Bitte geben Sie die gewünschte Höhe ein(Zahl>0):");
				h = Integer.parseInt(dIn.readLine());
			} 
			else 
			{
				b = (int) (Math.random() * 99+1);
				h = (int) (Math.random() * 99+1);
			}
			
			
			f = flaeche();
			q = isQuadrat();
			System.out.println("Die Breite beträgt: " + b + " und die Höhe :" + h);
			System.out.println("Die Fläche beträgt  "+f+".");
			System.out.println("Ist dieses Rechteck auch ein Quadrat?");
			System.out.println(q);
			
		}
	
		
	
		static boolean isQuadrat() {
			if(h==b)return(true);
			else return false;
		}



		static int flaeche() 
		{ 
		int flaeche= b*h;
			return flaeche;

			}
	}

das funktioniert soweit ganz gut, nun habe ich im selben Packet , noch ein kleines Programm,
welches mir 1000 Rechtecke mit zufälliger Seitenabmessung in eine ArrayList ablegt.Anschließend
soll der gesamte Flächeninhalt aller Rechtecke überprüft und ausgegeben werden und die Anzahl der Quadrate
soll auch überprüft werden:
Code:
package Rechteck;

import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Random;

public class Rechteckliste {
	    
	private static int b,h,x,,c,d ;
	static boolean q;
	
	
		public static void main(String[] args) 
		throws NumberFormatException, IOException

			{
				f = Rechteck.flaeche();
				q = Rechteck.isQuadrat();
				x=1000;
				d=100;//die Zufällige Seitenlänge soll 100 nicht überschreiten
				c=d-1;//wegen (int) (Math.random() * c+1);
				
			
				int zähler = 0;
				int a = 0;
				ArrayList liste []= new ArrayList[x];
				for (int i = 0; i < x; i++)
				{
					b = (int) (Math.random() * c+1);
					h = (int) (Math.random() * c+1);//bei Eingabe 0 =0+1;-)
					liste.add(new Rechteck(b,h));
				}
					long gesamtgflaeche=0;
					int anzQuadrate=0;
					
					for (int i=0;i <x;i++){
					
                Rechteck tempRechteck=(Rechteck)liste.get[i];
						 
					gesamtgflaeche += tempRechteck.flaeche();
					if(tempRechteck.isQuadrat())
					anzQuadrate++;
					}
		}
}
//Um am Ende gesamtgflaeche u. anzQuadrate ausgeben zu können


Aber irgendwo liegt der Hund begraben!!!

Rot unterwellt in Eclipse sind:
Zeile 32 liste.add(new Rechteck(b,h));
Zeile 39 liste.get


Beim Ausführen gibt der Compiler folgende Fehler Meldung aus:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:
Cannot invoke add(Rechteck) on the array type ArrayList[]
liste.get cannot be resolved or is not a field

at Rechteck.Rechteckliste.main(Rechteckliste.java:32)


Und ich komme einfach nicht dahinter woran das ganze scheitert :autsch:


Dankeschön für eure Hilfe!!! :D
mfg coffeecup
 

Verjigorm

Top Contributor
Du benutzt Arraylisten falsch.
Schonmal ein kleines Programm geschrieben mit nur einer Arrayliste?

mit add/get/remove?
Nein? Machen! :)
 

Verjigorm

Top Contributor
Code:
 ArrayList liste []= new ArrayList[x];
:autsch:
Da fängt der Horror an :D

dann halt zeile 32,39 ...
 

coffeecup

Aktives Mitglied
Habe gestern noch etwas gebastelt bin nun schon viel weiter mit meinem kleinen Programm!



habe aber noch ein kleines Problem:


Wie kann ich denn in einem Array =>

Code:
int[][] recht= new int[b][h];

=> eine zufällige Zelle auswählen um sie mit int x; zu multiplizieren?
Mein Problem ist, dass ich das in einer Schleife mache will, um dann
eine zufällige Zelle des Arrays auszuwählen und mit x zu multiplizieren,
die Schleife soll f mal durchlaufen, doch die zufällig gewählte Zelle sollte
bei jedem durchgang zufällig sein, also ne andere, nicht immer die selbe;-)

Geht das überhaupt mit einer schleife?
 

Verjigorm

Top Contributor
new Random().nextInt(n);

Die Zufallszahl liegt dann zwischen 1 und n

n sollte dann deine maximale Zellen bzw. Spaltenanzahl sein
 

coffeecup

Aktives Mitglied
nunja, aber wie schaffe ich es dass diese Zelle um 1 erhöht wird??
und in der nächsten Runde eine andere Zufällige?
 

Verjigorm

Top Contributor
speicher dir den wert halt in einer int Variablen, die du immer erhöhst

Code:
int zufall = new Random().nextInt(47)

for(...)
{
... zufall++;...
}
 
G

Guest

Gast
Danke schon mal für die Antwort!


Ich habe
int[][] array = new int[h];
int g=b*h;
int zufall = (int) (Math.random() * g)//ist dann g die max.anzahl der zellen im array???




und wie schreibe ich das dann in die Schleife?
Mir geht es nicht darum dass ich es theoretisch nicht schaffe, sondern eher darum, dass ich
es nicht schaffe den ausdruck eindeutig hinzuschreiben :cry:

Danke mfg
 

coffeecup

Aktives Mitglied
Hoppla, war anscheinend grade nicht angemelden. die Frage kommt von mir:
Danke schon mal für die Antwort!


Ich habe
int[][] array = new int[h];
int g=b*h;
int zufall = (int) (Math.random() * g)//ist dann g die max.anzahl der zellen im array???




und wie schreibe ich das dann in die Schleife?
Mir geht es nicht darum dass ich es theoretisch nicht schaffe, sondern eher darum, dass ich
es nicht schaffe den ausdruck eindeutig hinzuschreiben

Danke mfg
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
G Bei dynamischer Arrayliste nach jeder Auswahl Zahl entfernen Java Basics - Anfänger-Themen 3
M Arrayliste mit beliebig vielen Namen befüllen Java Basics - Anfänger-Themen 4
Poppigescorn Arrayliste Mittels Scanner erweitern Java Basics - Anfänger-Themen 6
Poppigescorn Mithilfe einer Arrayliste einen Notenspiegel ausgeben Java Basics - Anfänger-Themen 12
A Objekt in Arrayliste Java Basics - Anfänger-Themen 2
L Arrayliste von hinten nach vorne ausgeben Java Basics - Anfänger-Themen 10
X Methode kann auf ArrayListe nicht zugreifen! Java Basics - Anfänger-Themen 10
F ArrayListe manuell programmieren? Java Basics - Anfänger-Themen 24
S Daten aus zwei Verschiedenen Tabellen in eine ArrayListe Java Basics - Anfänger-Themen 4
J Best Practice [Code Verbesserung] TXT einlesen und in Arrayliste speichern Java Basics - Anfänger-Themen 5
S ArrayListe in einer JComboBox anzeigen Java Basics - Anfänger-Themen 10
R Eine Arrayliste in XML abspeichern und laden können Java Basics - Anfänger-Themen 7
P Klasse in Klasse einfügen (arrayliste) Java Basics - Anfänger-Themen 7
O ArrayListe sortieren anhand zweier Parameter Java Basics - Anfänger-Themen 4
A ArrayListe ist nur lokal vorhanden Java Basics - Anfänger-Themen 5
L Input/Output Sortieren Speichern Laden von ArrayListe Java Basics - Anfänger-Themen 14
B ArrayListe in Arraylist Problem Java Basics - Anfänger-Themen 3
N Kopieren einer ArrayListe Java Basics - Anfänger-Themen 3
S ArrayListe??? Java Basics - Anfänger-Themen 2
J Arrayliste in RandomAccesFile speichern Java Basics - Anfänger-Themen 7
D komplizierte Arrayliste sortieren Java Basics - Anfänger-Themen 17
J Arrayliste (gefüllte mit arrays) nach datum sortieren Java Basics - Anfänger-Themen 3
W ArrayListe , Wo ist mein Fehler? Java Basics - Anfänger-Themen 6
K ArrayListe erstellen mit vielen (unendlichen) Weren ??? Java Basics - Anfänger-Themen 29
B Aufgabe: Arrayliste ausgeben, stimmt es so? Java Basics - Anfänger-Themen 8
G Arrayliste mit Objekt anhand von Strings sortieren Java Basics - Anfänger-Themen 8
G ArrayListe vom Server nach Client schicken Java Basics - Anfänger-Themen 17
ChaosNo1 Arrayliste global nutzen? Java Basics - Anfänger-Themen 4
C Elemente aus Arrayliste ausgeben Java Basics - Anfänger-Themen 6
S Arrayliste füllen Java Basics - Anfänger-Themen 4
O ArrayListe mit Objekten Java Basics - Anfänger-Themen 2
B ArrayListe . WIE AUSLESEN ? Java Basics - Anfänger-Themen 5
G ArrayListe Java Basics - Anfänger-Themen 14
T Objekte aus Datei in ArrayListe werfen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben