Переменная и проверка в случае неудачи - PullRequest
0 голосов
/ 03 февраля 2012

Я использую следующий код для захвата выбранного значения в счетчике:

cbFormato.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {                       
        public void onItemSelected(AdapterView<?> parent, View v, int posicao, long id) {
            //pega nome pela posição
            formatoSelecionado = parent.getItemAtPosition(posicao).toString();
        }            
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });

Когда я использую код ниже, чтобы показать значение, которое он взял, спиннер возвращает значение: круговой Код для возврата значения счетчика:

Toast.makeText(AppTubulao.this, "Circular: " + formatoSelecionado, Toast.LENGTH_LONG).show();

Проблема в том, что, когда я проверяю значение счетчика в том же коде, который указан ниже, он не распознает значение, то есть значение, которое он показывает мне в тосте, не совпадает с «круговым», если это тест

if (formatoSelecionado == "Circular")
                        {
                            Toast.makeText(AppTubulao.this, "Circular: " + formatoSelecionado, Toast.LENGTH_LONG).show();
}

Он не ввел оператор if

Ответы [ 2 ]

1 голос
/ 03 февраля 2012

Для равенства строк в Java следует использовать методы equals или equalsIgnoreCase. Таким образом, для проверки formatoSelectionado равен строке "Круговой", вам необходимо использовать:

if (formatoSelecionado.equals("Circular")) ...

или

if (formatoSelecionado.equalsIgnoreCase("Circular"))

1 голос
/ 03 февраля 2012

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

if (formatoSelecionado.equals("Circular")) {
...