返回一个 ArrayList 方法

1 java arraylist

这是另外两个类的驱动方法。我在这里发布 https://codereview.stackexchange.com/questions/33148/book-program-with-arraylist

我需要一些关于私有静态 ArrayList getAuthors(Stringauthors) 方法的帮助。我是个初学者。所以请帮我完成这个驱动方法。或者给我一些指示。

操作说明

allAuthors 数组的某些元素在两个作者姓名之间包含星号“*”。getAuthors 方法使用此星号作为名称之间的分隔符,以将它们分别存储在返回的字符串 ArrayList 中。

import java.util.ArrayList;

public class LibraryDrive {

public static void main(String[] args) {

    String[] titles = { "The Hobbit", "Acer Dumpling", "A Christmas Carol",
            "Marley and Me", "Building Java Programs",
    "Java, How to Program" };

    String[] allAuthors = { "Tolkien, J.R.", "Doofus, Robert",
            "Dickens, Charles", "Remember, SomeoneIdont",
            "Reges, Stuart*Stepp, Marty", "Deitel, Paul*Deitel, Harvery" };

    ArrayList<String> authors = new ArrayList<String>();
    ArrayList<Book> books = new ArrayList<Book>();

    for (int i = 0; i < titles.length; i++) {
        authors = getAuthors(allAuthors[i]);
        Book b = new Book(titles[i], authors);
        books.add(b);
        authors.remove(0);
    }
    Library lib = new Library(books);
    System.out.println(lib);
    lib.sort();
    System.out.println(lib);

}

private static ArrayList<String> getAuthors(String authors) {
    ArrayList books = new ArrayList<String>();
            // need help here.
    return books;
}

}
Run Code Online (Sandbox Code Playgroud)

Apo*_*los 5

尝试这个

private static ArrayList<String> getAuthors(String authors) {
    ArrayList books = new ArrayList<String>();
      String[] splitStr = authors.split("\\*");
      for (int i=0;i<splitStr.length;i++) {
        books.add(splitStr[i]);
       }
    return books;
}
Run Code Online (Sandbox Code Playgroud)