in my app i have two editbox in which the user types the email and password. The values are send to an URL and if the return values is success i am moving to a new activity, else if the return value is Email And Password Not Match! i want to show an alert box that emailand pwd mismatches.
For this, after getting the xml file from the network using sax parser i am doing parsing the and if the return value is "Email And Password Not Match!", i am storing this in a constant names as ERROR_VALUE.
i have already stored the value in a String constant as follows
public static String ERROR_CONST = "Email And Password Not Match!";
now i am comparing those values and showing an alert box,
if (ERROR_CONST.contentEquals(ERROR_VALUE))
{
alertbox();
}
after this i am using the else part to move to a new activity, my app gets crashed at this part only
else if(ERROR_VALUE == null)
{
Intent myIntent = new Intent(getBaseContext(), Add.class);
startActivityForResult(myIntent, 0);
finish();
}
}
how to use else condition successfully in my app, please help me friends
Well when comparing 2 strings its always a good idea to use
reading your post I would suggest you use enum or constants
to compare rather that strings.
Comparing strings is tedious (have to be careful that your comparing the characters and not references etc.). As comparing 2 int is easy and takes less time
I checked quickly in the javaDoc
contentEquals compares your String to a StringBuffer
http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#contentEquals(java.lang.StringBuffer)
as
http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#compareTo(java.lang.String)
Compares the actual string letters
other edit (sorry about that)
if your code is
then you have a problem when ERROR_VALUE is == null.
you pass null in contentequals and I’m guessing Java tries to convert null to StringBuffer and crashes.
what you want to do it
this way you avoid any null pointer exceptions and your compare will work just fine