Hjälp med en liten java-övning
Hej,
Jag är nybörjare med java (läser en kurs på universitet) och håller på med en övningsuppgift. Jag har kommit en bit på vägen men är nu fast och vet inte riktigt hur jag ska göra. Det vore grymt om någon kunnig kunde hjälpa mig :). Här bifogar jag uppgiften så att ni hajar vad det handlar om:
Skriv ett litet Java-program (en klass med en main-metod) som frågar användaren efter ett antal textsträngar. Därefter skall programmet fråga användaren efter ett tecken och sedan skriva ut alla textsträngar som innehåller det angivna tecknet.
Programmet skall först fråga användaren efter hur många textsträngar som skall matas in. Därefter får användaren mata in alla dessa strängar. De olika textsträngarna läggs lämpligen i en array. Sedan frågas efter tecknet och slutligen skrivs alla de strängar som innehåller det angivna tecknet ut på skärmen. När programmet körs skall det se ut ungefär så här:
Hur många textsträngar? 7
Sträng 1> Hej Hopp
Sträng 2> Karamellkungen
Sträng 3> Papegoja
Sträng 4> 762 Höga Hus
Sträng 5> Gatsten
Sträng 6> Antal Harar
Sträng 7> Rulltrappa
Ange önskat tecken: H
Strängarna som innehåller H:
Hej Hopp
762 Höga Hus
Antal Harar
Om inget av orden innehåller det angivna tecknet skall ett meddelande om det skrivas ut:
Ingen av strängarna innehåller H
Och detta är hur koden ser ut än så länge:
import java.util.Scanner;
class o7{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
System.out.print("Hur många textsträngar? ");
String plats=sc.nextLine();
int index = Integer.parseInt(plats);
String[] arr=new String[index];
int sp =0;
for(int ind=0; ind<arr.length; ind++){
sp++;
System.out.print("Sträng " +sp+ ">");
String st=sc.nextLine();
arr[ind] = st;
}
for(int ip=0; ip<arr.length; ip++){
System.out.print(arr[ip]+" ");
}
System.out.println();
System.out.print("Ange önskat tecken: ");
String letter=sc.nextLine();
System.out.println("Strängarna som innehåller "+letter+":");
}
}
Jag har alltså kommit till den delen där man skriva ut vilken eller vilka strängar som innehåller det specifierade tecknet. Och jag vet inte om jag ska göra en ny array för det strängar som bli utvalda eller om det funkar att lista upp dom på nåt sätt, samt hur gör jag överhuvudtaget för att "hitta" (i textsträngen) det tecken som blivit angivet och sedan returnera de texsträngar som innehåller ett sådant tecken?
Jag antar att det behövs t ex en for-loop och kanske en if-sats som avgör om tecknet förekommer eller inte, men hur gör jag som sagt detta? Och passar det sig att använda följande metod i detta tillfälle: public char charAt(int index)
?
Tack!!
/Snorkelfarsan