我已经声明了一个2-D arrayList,如下所示 -
ArrayList<ArrayList<Integer>> arrayList = new ArrayList<ArrayList<Integer>>();
arrayList的输出是这样的 -
[[1,],[2,B],[3,C],......] 我想知道有没有办法在不同的数组中分别保存两列?一个数组中的所有数字和不同数组中的所有字母。
答案 0 :(得分:0)
是的,你可以有两个ArrayList
。
ArrayList<Integer> numbers = new ArrayList<>();
ArrayList<Character> letters = new ArrayList<>();
然后你可以有一个同时向两个项目添加项目的方法:
public void add(Integer number, Character letter) {
numbers.add(number);
letters.add(letter);
}
现在既然你想根据数字对列表进行排序,并且希望字母对应于数字排序,那么你可以使用OO的特征,即{{{{{{{ 1}}:
Encapsulation
现在在您的主页,
// Simply create a class that will store the number and the letter
public class Capsule {
private int number;
private char letter;
// Create a constructor to initialise the variables
public Capsule(int number, char letter) {
this.number = number;
this.letter = letter;
}
// Create getters to retrieve their values
public int getNumber() {
return number;
}
public char getLetter() {
return letter;
}
}