Я объясняюсь. У меня есть arraylist с идентификацией встреч 1,2,3,4,5, объект aciente и час. Я хочу, чтобы, когда удалит встреча например 3, идентификации 4 перешло к тому, чтобы быть 3 и того 5 перейдет к тому, чтобы быть 4. Это - то, что пришло в голову мне
for (int i = 0; i < listaDoctoresG.size(); i++) {
if (listaDoctoresG.get(i).getNombreDoctor().compareToIgnoreCase(cmbDoctor.getSelectedItem().toString()) == 0) {
listaDoctoresG.get(i).getListaCitas().remove(indice);
for (int x = 0; x < listaDoctoresG.get(i).getListaCitas().size();x++) {
Doctor nD = (Doctor) listaDoctoresG.get(i);
for(int z = indice; z<=nD.getListaCitas().size(); z++ ){
int nCita = nD.getListaCitas().get(i).getNumerocita();
nCita -=1;
}
}
}
}
Что ему не хватает чего-то, но не, как делание этого
Есть лучшие способы это делать, но basГЎndome в твоем вопросе, aquГ - у тебя есть ответ.
у переменной numeroCitas должна бы быть C mayГєscula. И я рекомендую тебе в объектах не помещать такой суффикс как Встречи или Доктор. Если или estГЎs соглашаясь на объект Доктор, или ты знаешь, что Doctor.nombre - имя доктора
for (int i = 0; i < listaDoctoresG.size(); i++) {
// El doctor lo tienes desde este punto
Doctor doctor = listaDoctoresG.get(i);
if (doctor.getNombreDoctor().equalsIgnoreCase(cmbDoctorSelected)) {
// Este indice debe ser del tipo primitivo int, no puede ser Integer
doctor.getListaCitas().remove(indice);
// Recorre la lista de citas desde la que se ha borrado
for(int j=indice; j<doctor.getListaCitas().size(); j++) {
// Actualiza los numeros
doctor.getListaCitas().get(j).setNumeroCita(
doctor.getListaCitas().get(j).getNumeroCita()-1);
}
}
}