I think that:
"=" is used for assignment
"==" is used to compare if the values are equal or not but this will be true if both of the value point to the same memory location.
".equals" is also used to compare the object but they did not have to point to the same memory location. So it is usually used for compare 2 String.