webForumDet fria alternativet

tafram rätt objekt.

1 svar · 291 visningar · startad av golgata

golgataMedlem sedan maj 2000131 inlägg
#1

SKa göra en sökning på 2 saker. Titel och Årtal.
När jag bara söker på titel så fungerar det. Men hur gör jag om jag vill kontrollera både Titel och Årtal.

Metoden ser ut såhär.

public Media[] searchMedia(String i_Media)
	{
	Media[] temp = new Media[m_mediaArray];			
	int i, count = 0;
		for(i = 0; i < m_mediaArray; i++)
		{
			if(lista[i].getTitel().equalsIgnoreCase(i_Media))
				temp[count++] = lista[i];
		}
		Media[] hits = new Media[count];
		for(i = 0; i < count; i++)
			hits[i] = temp[i];
		
		return hits;
	
	}

Själva sökningen ser ut såhär:

						System.out.println("********************************************");
					System.out.println("***  Sök efter titel som du vill tabort  ***");
					System.out.println("********************************************");
					System.out.println("Vilken Titel? ");
	Titel = indata.readLine();
					System.out.println("Vilken UtgivningsÅr? ");
	String år = indata.readLine();
	int utgivningsÅr = Integer.parseInt(år);
	//Söker efter Titel & År
					System.out.println();
					System.out.println("Soker efter " + Titel + År +"...");
					lista.searchMedia(Titel);
lista.print();

Får bara det att fungera om jag tarbort detta men då visar den alla med rätt titel och inte bara den med rätt titel och årtal

System.out.println("Vilken UtgivningsÅr? ");
	String år = indata.readLine();
	int utgivningsÅr = Integer.parseInt(år);
jmeMedlem sedan maj 20012 237 inlägg
#2

Hej!

Din metod searchMedia returnerar en array av typen Media.

Inuti metoden searchMedia så lagrar du alla hittade svaren i arrayn hits[], som metoden sedan returnerar.

Senare i koden har du:

lista.searchMedia(Titel);
lista.print(); // vad skriver denna metod ut?

lista.searchMedia(Titel);

borde vara

Media[] result = lista.searchMedia(Title);
Du måste lagra variabeln som returneras av searchMedia()

sedan:

for(int i = 0; i < result.length; ++i)
{
	Media m = result[i];
	System.out.println(m.metodX() );
}
131 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)