webForumDet fria alternativet

klasser

3 svar · 278 visningar · startad av mikael_a

mikael_aMedlem sedan mars 2000475 inlägg
#1

Hej,

jag sitter och försöker att lära mig lite java... Har precis kommit till kapitel Klasser i boken...

meny:

1. registrera person
2. visa person
3. avsluta

om jag väljer "1" och ställer frågan hur många vill du registrera?
sparar detta värde i antal

går det då inte att skapa ett mer dynamisk prg. ???

jag gör nu:

data1=new Person();

men jag vill istället kunna bestämma hur många data i Person.class som skall skapas beroende på valet i "hur många vill du registrera?"

detta fungerade inte data1=new Person(antal);

hoppas ni förstod vad jag menade...

ViktorMedlem sedan aug. 20021 752 inlägg
#2

Visst kan du göra det mer dynamiskt, men då måste du använde en collection klass för att spara dina personer. Jag tror nog att din bok är pedagågiskt uppbyggd och kommer att ta upp collection klasser och mer dynamiska program sernar och rekomenderar att du väntar tills dess. Då kommer du även att förstå vaför inte new Person(antal) fungerar :)
Men såhär skulle det kunna seut

import java.util.Vector;
public class test
{
	public static void main(String argv[])
	{
		int antal=3;
		Vector v=new Vector();
		Person data=null;
		int i=0;
		for(i=0;i<antal;i++)
		{
			data=new Person();
			data.setName("Kalle");
			data.setAge(12);
			v.add(data);
		}
		for(i=0;i<antal;i++)
		{
			data=(Person)v.elementAt(i);
			System.out.println("Namn: "+data.getName());
			System.out.println("Ålder: "+data.getAge());
		}
	}
}

class Person
{
	private String name="";
	private int age=0;

	public void setName(String name)
	{
		this.name=name;
	}
	
	public String getName()
	{
		return(name);
	}
	
	public void setAge(int age)
	{
		this.age=age;
	}
	
	public int getAge()
	{
		return(age);
	}
}

Denna skapara 3 personer (dock med samma namn och ålder men det går ju att fixa) och spara dem i en vector (en dynamisk array). Efter att alla ligger i vectorn så hämtar den ut dem och skriver ut vad de innehåller.

/Viktor

ViktorMedlem sedan aug. 20021 752 inlägg
#3

Dubbel Post :(

mikael_aMedlem sedan mars 2000475 inlägg
#4

Tack, då får jag fortsätta att läsa, men jag förstår vad du menar med ditt kod exempel...

122 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
119 ms — hämta tråd, inlägg och bilagor (db)