为什么这个 if 语句总是返回 true?

克利文

我的 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();
                }

我究竟做错了什么?

这段代码的结果是大学已经存在的对话框。

斯特凡

编译器是对的,该值将是true由于以下原因:

下面这一行;的末尾有一个:删除它,它将按预期工作。

if(u.getDesc().trim().toLowerCase().equals(addUniDesc.getText()
                                         .toString().trim().toLowerCase()));

;结束if在这方面的范围。这意味着下面的“范围”:

{ 
    exists = true;
}

将永远被执行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么此if语句总是返回true

Greasemonkey:为什么if语句总是返回true?

为什么此JavaScript if语句总是返回true?

为什么这个函数会为这个变量返回 True?

为什么if语句返回`true`?

为什么if语句返回True?

为什么我的AsyncValidator总是返回true?

为什么这个 if 语句在 bash 中被评估为 true?

为什么这个简单的bash regex不返回true?

为什么这个if语句结合赋值和相等性检查返回true?

PHP 为什么我的“if”语句总是给出 TRUE?

If 语句在循环中,结果总是返回 True

为什么这个函数总是返回 null

为什么这个方法总是返回 -1

为什么这个函数总是返回 0

为什么document.implementation.hasFeature()总是返回true?

为什么 Powershell Test-Path -Isvalid 总是返回 true

为什么我的dllimport函数总是返回true?

为什么ModelState.IsValid总是返回true?

为什么bash中的hash命令总是对./ <something>返回true

为什么我的RegEx在Bash中总是返回“ true”?

为什么即使有数字,islower 也总是返回 true?

为什么这个准备好的语句总是返回受影响的-1行?

为什么这个正则表达式返回true,而逻辑上应该返回false?

为什么在这个函数中我不能返回false,但我可以返回true?(球拍)

为什么 Ajax 请求总是显示错误消息而 JSon 总是返回 true?

如果语句应该为true时为什么返回false?

为什么lodash`_.all([true,true,true],true);`返回`false`?

为什么'$ true -eq“ string”'返回$ true?