У меня есть 2D-массив, который содержит строки в виде букв, начинающихся с A, идет в строку 0 , а из B - в строку 1 и т. Д. Мы можем использовать charAt метод и ASCII-значение для A составляет 65 , а B - 66 и так далее. Это метод, который принимает аргумент String , а удаляет параметр из соответствующей строки, а также удаляет всю строку структуры. Единственное, что не так в следующем коде - это метод удаления.
public AlphaList() {
this.list=new String[26][];
for (int row=0; row<this.list.length; row++) {
list[row]=new String[0];
}
}
public void insert(String value) {
int firstChar=(int) value.charAt(0)-65;
String[] newList=new String[list[firstChar].length+1];
newList[newList.length-1]=value;
for(int i=0; i<list[firstChar].length;i++){
newList[i]=list[firstChar][i];
}
list[firstChar]=newList;}
public void remove(String value) {
int firstChar=(int) value.charAt(0)-65;
String[] newList=new String[list[firstChar].length-1];
newList[newList.length-1]=value;
for(int i=0; i<list[firstChar-1].length;i++){
newList[i]=list[firstChar-1][i];
}
list[firstChar]=newList;
}