2015-06-03 3 views
-3

У меня есть мертвое предупреждение кода в этой позиции:Почему предупреждение Мертвого кода

if("Email" == "+email.getText().toString()+"){ 
    Toast.makeText(getApplicationContext(), "email_id already available ", Toast.LENGTH_SHORT).show(); 
} 

Может кто-нибудь помочь?

+0

Что такое предупреждение? – Biswajit

+3

Первое использование равно для сравнения строк вместо '==' –

ответ

4

если ("Электронная почта" == "+ email.getText(). ToString() +")

"Отправить" никогда не может быть равна «+ email.getText () .ToString() +»

вы, вероятно, хотели написать

if("Email" == email.getText().toString()) 

и вы должны использовать равной Метод для сравнения строк:

if("Email".equals(email.getText().toString())) 

Вы найдете подробную информацию о сравнении строк в Java HERE

+0

'==' будет работать? –

+0

Да, это сработает. но это определенно плохой код. вы должны использовать равные для сравнения строки или объекты в java –

3

Это должно быть

if("Email".equals(mail.getText().toString())) 
    { 
    Toast.makeText(getApplicationContext(), "email_id already available ", Toast.LENGTH_SHORT).show(); 
    } 
4

«Отправить» никогда не будет равна "+ email.getText(). ToString() +". Я думаю, что вы хотите использовать:

if ("Email".equals(email.getText().toString()))

0

Заменить "Email" == "+email.getText().toString()+""Email".equals(email.getText().toString()) с

Строки всегда должны быть сопоставлены с использованием метода equals().

Также рассмотрим определение констант, например.

public static final String KEY_EMAIL = "Email" 

затем использовать

if(email.getText().toString().equals(KEY_EMAIL)) {...} 
0

вы должны использовать

if(email.getText().toString().equals("Email"){ 
Toast.makeText(getApplicationContext(), "email_id already available ", Toast.LENGTH_SHORT).show(); 
} 

или использовать ignoreCaseEquals, объяснение, почему он мертв код, который вы должны знать, прочитав выше ответы

Смежные вопросы