Мое утверждение if, в котором я сравниваю существующее имя с введенным именем, возвращает значение true, даже если я знаю, что введенное имя не существует.В нем также говорится, что оператор if имеет пустое тело.
boolean exists = false;
for(University u : uniList)
{
if(u.getDesc().trim().toLowerCase().equals(addUniDesc.getText().toString().trim().toLowerCase()));
{
exists = true;
}
}
if(!exists)
{
Map<String, Object> user = new HashMap<>();
user.put("Desc", addUniDesc.getText().toString());
db.collection("university")
.add(user)
.addOnSuccessListener(new OnSuccessListener<DocumentReference>() {
@Override
public void onSuccess(DocumentReference documentReference) {
Snackbar.make(btnAddUni, "Added", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
addUniDesc.setText("");
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Snackbar.make(btnAddUni, "Failed", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
else
{
AlertDialog.Builder builder1 = new AlertDialog.Builder(new ContextThemeWrapper(getContext(), R.style.myDialog));
builder1.setTitle("University already exists")
.setMessage("Change something!")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
}
});
builder1.create();
builder1.show();
}
Что я делаю не так?
Результатом этого кода является диалог о том, что университет уже существует.