gpt4 book ai didi

java - 将数组转换为ArrayList

转载 作者:行者123 更新时间:2023-12-02 05:13:16 24 4
gpt4 key购买 nike

我通过使用数组来创建引文索引来实现一个接口(interface)。我是一名新程序员,想学习如何将当前的 Array 实现转换为 ArrayList 实现。到目前为止,这是我的代码。如何在 printCitationIndex() 方法中使用 ArrayList 而不是数组?

    import java.util.ArrayList;

public class IndexArrayList implements IndexInterface{
ArrayList<Citation> citationIndex = new ArrayList<Citation>();
private String formatType;
private int totalNumCitations, numKeywords;
ArrayList<Keyword> keywordIndex = new ArrayList<Keyword>();


public void printCitationIndex(){
// Pre-condition - the index is not empty and has a format type
//Prints out all the citations in the index formatted according to its format type.
//Italicization not required
if (!this.formatType.equals("")) {
if (!isEmpty()) {
for (int i = 0; i < citationIndex.length; i++) {
if (citationIndex[i] != null) {
if (this.formatType.equals("IEEE")) {
System.out.println(citationIndex[i].formatIEEE());
} else if (this.formatType.equals("APA")) {
System.out.println(citationIndex[i].formatAPA());
} else if (this.formatType.equals("ACM")) {
System.out.println(citationIndex[i].getAuthorsACM());
}
}
}
} else {
System.out.println("The index is empty!");
}
} else {
System.out.println("The index has no format type!");
}
}

}

最佳答案

为此最好使用增强型 for 循环(它也适用于数组,因此如果您之前发现过的话,数组和列表的语法将是相同的)

        for (Citation citation : citationIndex) {
if (citation != null) {
if (this.formatType.equals("IEEE")) {
System.out.println(citation.formatIEEE());
} else if (this.formatType.equals("APA")) {
System.out.println(citation.formatAPA());
} else if (this.formatType.equals("ACM")) {
System.out.println(citation.getAuthorsACM());
}
}
}

关于java - 将数组转换为ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27181332/

24 4 0