Java 5.0 neue For schleife Iterator was ist der fehler?

Status
Nicht offen für weitere Antworten.

reliC

Mitglied
Hi all,

hab da so ein blööööööödes problemchen.

Also ich habe 2 Klassen geschrieben eine die ein Produkt beschreibt und eine die eine zum testen des Produkts.

post:

Code:
package product;

public class Product 

 {

	private P Produkt;
	private double Preis;
	
	
	
	public Product(P Produkt , double Preis){
		this.Produkt=Produkt;
		this.Preis=Preis;
	}
	
	public P getProdukt(){
		return Produkt;
	}
	
	public double getPreis(){
		return Preis;
	}
	
	
	
	
 }

und die 2te Klasse mit der main methode

Code:
package product;
import java.util.*;
public class Test {

	public static void main(String []args){
	
	
		
		
		
		
	Product<String> p1 = new Product<String>("Knoppers",1.60);
	Product<String> p2 = new Product<String>("Gummibaer",1.40);
	Product<String> p3 = new Product<String>("KitKat",1.50);
	Product<String> p4 = new Product<String>("Mars",2.50);
	Product<String> p5 = new Product<String>("Snickers",3.50);
	
	Product[] products = new Product[]{p1,p2,p3,p4,p5};
	
	
	//for (int i=0;i<products.length;i++){
		
	//	System.out.println(products[i].getPreis());
	//	System.out.println(products[i].getProdukt());
		
	//}
	
	
	for (int p:products){ //neue For schleife
		
		System.out.println(p);
		
	}
	
}



So also ich habe in dem test Objekte von dem Produkt erstellt... diese sollte ich dann in ein Array packen und an die Console ausgeben... Das funktioniert gut mit einer normalen For schleife...die Aufgabenstellung ist aber das ich es mit der neuen For schleife machen soll aus Java 5...nur dann bekomme ich ein problem mit products...wo ich schon ewig dran rumprobiere.

Fehlermeldung:cannot convert from element type product to int....

wie soll ich das lösen??? Hat mir einer einen ansatz maybe danke
 
hi, ganz einfach. bei der foreach schleife musst du gleiche typen nehmen, da jeder durchlauf gleich das element ist. also so:

Code:
foreach(Product p : Product){
    ....
}

gruß
 
deine foreach schleife ist nicht ganz korrekt...

Code:
public class ForSchleife
{

	public static void main(String[] args)
	{
		Product<String> p1 = new Product<String>("Knoppers", 1.60);
		Product<String> p2 = new Product<String>("Gummibaer", 1.40);
		Product<String> p3 = new Product<String>("KitKat", 1.50);
		Product<String> p4 = new Product<String>("Mars", 2.50);
		Product<String> p5 = new Product<String>("Snickers", 3.50);

		Product[] products = new Product[] { p1, p2, p3, p4, p5 };

		for (Product product : products)
		{
			System.out.println(product.getProdukt());
			System.out.println(product.getPreis());
			System.out.println("#######################");
		}
	}

}

Code:
Knoppers
1.6
#######################
Gummibaer
1.4
#######################
KitKat
1.5
#######################
Mars
2.5
#######################
Snickers
3.5
#######################



[edit]hmm, zweiter :cry: [/edit]
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben