Mistři v programování na #hovnokod

Java #1005

Na rovnost dvou objektů se dá pohlížet různě a někdy u toho dokonce vyhodit výjimku...

	public class Client {
	
		...

		public boolean equals(Object other) {
			if (other == null) return false;
			
			if (other instanceof String) {
				return this.getName().equals(other);
			}
			
			if (NumberUtils.isDigits(id) && 
					NumberUtils.isDigits(((Client) other).getId()))
				return Long.valueOf(id).equals(Long.valueOf(((Client) other).getId())); 
			else
				return this.id.equals( ((Client) other).getId());		
		
		}	
	
	}

Anonymous,