String and Object Comparison Comparison operator.
-
Upload
kevin-ward -
Category
Documents
-
view
224 -
download
0
Transcript of String and Object Comparison Comparison operator.
String and Object Comparison
Comparison operator
Equality Testing vs. Assignment
· The = = operator tests for equality:if (x = = 0) . . // if x equals zero
· The = operator assigns a value to a variable:
x = 0; // assign 0 to x · Don't confuse them.
String Comparison
· Don't use = = for strings!if (input = = "Y") // WRONG!!!
· Use equals method:if (input.equals("Y"))
· = = tests identity, equals tests equal contents
· Case insensitive test ("Y" or "y")if (input.equalsIgnoreCase("Y"))
public class StringExample{ // instance variables - replace the example below with your own private String name; private String nickname;
/** * Constructor for objects of class StringExample */ public StringExample() { // initialize instance variables name = "Robert"; nickname = name.substring(0,3); } public void displayNames() { if (nickname == "Rob")
{ System.out.println("The nickname is Rob");
} else
{ System.out.println("There is no nickname");
}}
Object Comparison· = = tests for identity, equals for identical content
Rectangle cerealBox = new Rectangle(5, 10, 20, 30);Rectangle oatmealBox = new Rectangle(5, 10, 20, 30);Rectangle r = cerealBox;
· cerealBox != oatmealBox, but cerealBox.equals(oatmealBox)
· cerealBox == r· Note: equals must be defined for the class
Object Comparison