Сравнение строки и свойства объекта - PullRequest
0 голосов
/ 09 марта 2019

Я пытаюсь сравнить строку со свойством объекта, используя .equals (), но условие продолжает сбой, даже если оно истинно.Я пытался использовать trim (), чтобы избавиться от пробелов, но все равно не получается.

Вот мой код:

if (status) {
        inventoryList = allInventory.getInventory();
        assert assetId != null;
        for (Inventory inventory : inventoryList) {
            if (assetId.trim().equals(inventory.getProductCode().trim())) {

                //get the current quantity that exists

                new_quantity.setValue(0);

                new_quantity.setMaxValue(inventory.getQuantity());
                inventoryId = inventory.getId();
                return;

            } else {
                // new_quantity.setVisibility(View.GONE);
                decrement.setEnabled(false);
                AlertDialog.Builder alert = new AlertDialog.Builder(this);
                alert.setTitle("Product not found ");
                // prevent cancel of AlertDialog on click of back button and outside touch
                alert.setCancelable(false);
                alert.setMessage("Product is not in inventory. Do you want to continue scanning?");

                alert.setNegativeButton("No", (dialog, which) -> {
                            onBackPressed();
                            dialog.dismiss();
                        }
                );
                alert.setPositiveButton("Yes", (dialog, which) -> {
                    Intent scanAsset = new Intent(this, ScanActivity.class);
                    scanAsset.putExtra("building", building);
                    scanAsset.putExtra("room", room);
                    scanAsset.putExtra("department", depart);
                    scanAsset.putExtra("TAG", "E");
                    startActivity(scanAsset);
                    dialog.dismiss();
                });
                AlertDialog dialog = alert.create();
                dialog.show();
            }

        }

Ответы [ 2 ]

1 голос
/ 09 марта 2019

Я хотел бы указать на документы оракула, в которых говорится:

Сравнивает эту строку с указанным объектом.Результат имеет значение true, если и только если аргумент не равен нулю и является объектом String , представляющим ту же последовательность символов, что и этот объект.

enter image description here

0 голосов
/ 09 марта 2019

попробуйте использовать equalsIgnoreCase () вместо equals

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...