У меня этот конструктор в класса Music:Удалить объект из массива
protected String Title;
protected String Autor;
protected String Type;
protected int Code;
public Music (String title, String autor, String type, int code){
this.setTitle(title);
this.setAutor(autor);
this.setType(type);
this.setCode(code);
}
@Override
public String toString(){
return this.Title + " " + this.Autor + " " + this.Type + " " + this.Code;
}
Тогда в другом классе называется ManageMusic Я создаю некоторые методы, чтобы затем использовать их в основном классе. Я также определить массив строк refered к классу музыки, который я буду использовать в основном классе:
private final Music[] musicList;
private int counter;
public ManageMusic(int maxSize) {
musicList= new Music[maxSize];
counter= 0;
public void add(Music m){
musicList[counter] = m;
counter++;
}
Здесь я должен создать удалить метод, который будет удалить especific объект из musicList и возврата этот список без этого объекта.
Это способ добавить музыкальные элементы к musicList на основного класса:
static ManageMusic musiclist = new ManageMusic(20);
musicList.add(new Music(title, autor, format, code));
Мой подход к удаления метода в ManageMusic класс скопировать этот list в новую строку [], а затем скопируйте его обратно в список. Но, как я использую Objet от музыки вместо из строки, я не могу сделать копию обратно, потому что он не отбрасывает строку в musicList:
public void delete(int code){
String[] newString = new String[musicList.length];
int index_1 = 0;
for (int i=0; i<musicList.length; i++){
if(i != code){
newString[index_1] = musicList[i].toString();
index_1++;
}
}
int index_2 = 0;
for (int i=0; i<newString.length; i++){ //THIS IS WHERE IT SAYS: Cannot convert
// from String to Music
musicList[index_2] = newString[i];
index_2++;
}
}
я должен сделать что-то не далеко из-за этого, потому что тогда у меня есть метод, который перечисляет элементы из musicList, поэтому я не могу установить оператор return для метода.
[ArrayList] (http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html) –
Любая причина, по которой вы не используете альтернативную структуру данных, такую как Связанная - или ArrayList, который имеет встроенные функции для удаления определенных объектов? – SBI
@Alexey Andreev Я начинаю с java и не слишком много использую ArrayList. Можете ли вы написать ответ с примером, используя мой код? – masmic