我試圖在arrayList中搜索由用戶輸入指定的字符串,然後將該搜索的結果打印到控制檯。我知道我應該使用toIndex()
,但我無法弄清楚它的語法。在ArrayList中搜索字符串並打印字符串
import java.util.*;
public class searchSongs {
public static void main(String[]args){
Scanner searchBar = new Scanner(System.in);
System.out.println("Enter song title");
String search = searchBar.nextLine().toUpperCase();
for (int i = 0; i< MP3_catalogue.artist.size(); i++){
if (MP3_catalogue.artist.contains(search)){
int SV = search.indexOf(search);
System.out.println(MP3_catalogue.title.get(SV));
System.out.println(MP3_catalogue.artist.get(SV));
System.out.println(MP3_catalogue.duration.get(SV));
}
}
MP3_catalogue obj = new MP3_catalogue();
}
}
編輯:主類是MP3_catalogue其中包含arrayLists。無需做特殊的事情,他們具有相同的索引值作爲藝術家
import java.util.*;
public class MP3_catalogue {
static String gotoMenu = new String();
//"gotoMenu" is variable used to return to menu after each interaction with the methods.
public static ArrayList<String> title = new ArrayList<String>();
public static ArrayList<String> artist = new ArrayList<String>();
public static ArrayList<String> duration = new ArrayList<String>();
//arrayLists for song elements
@SuppressWarnings("resource")
public static void main(String[]args){
System.out.println("Welcome to your music catalogue. \n \n" + "Menu choices:");
System.out.println("A to add songs\n" + "D to delete songs\n" + "S to search catalogue\n" + "C to change song\n" + "? to shuffle catalogue\n");
gotoMenu = "Y";
while (gotoMenu.equals("Y")){
System.out.println("Enter your choice:");
Scanner userOption = new Scanner(System.in); //scanner to choose menu option
String choice = userOption.nextLine().toUpperCase();
switch (choice) {//switch statement used to go to each menu option
case "A": addSongs.main(args);//executes addSongs
System.out.println("Would you like to return to menu? Press Y to return, press N to exit program.");//choice to return to menu
String goback = userOption.nextLine().toUpperCase();
if(goback.equals("N"))
{
gotoMenu = "N";
}
break;
case "D": deleteSongs.main(args);
System.out.println("Would you like to return to menu? Press Y to return, press N to exit program.");//choice to return to menu
String returnMenu = userOption.nextLine().toUpperCase();
if(returnMenu.equals("N"))
{
gotoMenu = "N";
};
break;
case "S": searchSongs.main(args);
gotoMenu = "N";
break;
case "C": System.out.println("Change songs");
gotoMenu = "N";
break;
case "?": System.out.println("Shuffle time");
gotoMenu = "N";
break;
default: System.out.println("Doesn't match a menu choice. Type more carefully this time.");
break;
}
}
}
}其他的ArrayList
使用正則表達式和模式匹配器。 –
'ArrayList'在哪裏? –
請添加完整的代碼。添加MP3_catalogue課程詳細信息 – anon