80 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Java
		
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Java
		
	
	
	
| package tools;
 | |
| 
 | |
| import java.io.Serializable;
 | |
| 
 | |
| public class Triple<E, F, G> implements Serializable {
 | |
|     private static final long serialVersionUID = 9179541993413739999L;
 | |
|     public E left;
 | |
|     public F mid;
 | |
|     public G right;
 | |
| 
 | |
|     public Triple(final E left, final F mid, final G right) {
 | |
|         this.left = left;
 | |
|         this.mid = mid;
 | |
|         this.right = right;
 | |
|     }
 | |
| 
 | |
|     public E getLeft() {
 | |
|         return this.left;
 | |
|     }
 | |
| 
 | |
|     public F getMid() {
 | |
|         return this.mid;
 | |
|     }
 | |
| 
 | |
|     public G getRight() {
 | |
|         return this.right;
 | |
|     }
 | |
| 
 | |
|     @Override
 | |
|     public String toString() {
 | |
|         return this.left.toString() + ":" + this.mid.toString() + ":" + this.right.toString();
 | |
|     }
 | |
| 
 | |
|     @Override
 | |
|     public int hashCode() {
 | |
|         final int prime = 31;
 | |
|         int result = 1;
 | |
|         result = 31 * result + ((this.left == null) ? 0 : this.left.hashCode());
 | |
|         result = 31 * result + ((this.mid == null) ? 0 : this.mid.hashCode());
 | |
|         result = 31 * result + ((this.right == null) ? 0 : this.right.hashCode());
 | |
|         return result;
 | |
|     }
 | |
| 
 | |
|     @Override
 | |
|     public boolean equals(final Object obj) {
 | |
|         if (this == obj) {
 | |
|             return true;
 | |
|         }
 | |
|         if (obj == null) {
 | |
|             return false;
 | |
|         }
 | |
|         if (this.getClass() != obj.getClass()) {
 | |
|             return false;
 | |
|         }
 | |
|         final Triple other = (Triple) obj;
 | |
|         if (this.left == null) {
 | |
|             if (other.left != null) {
 | |
|                 return false;
 | |
|             }
 | |
|         } else if (!this.left.equals(other.left)) {
 | |
|             return false;
 | |
|         }
 | |
|         if (this.mid == null) {
 | |
|             if (other.mid != null) {
 | |
|                 return false;
 | |
|             }
 | |
|         } else if (!this.mid.equals(other.mid)) {
 | |
|             return false;
 | |
|         }
 | |
|         if (this.right == null) {
 | |
|             if (other.right != null) {
 | |
|                 return false;
 | |
|             }
 | |
|         } else if (!this.right.equals(other.right)) {
 | |
|             return false;
 | |
|         }
 | |
|         return true;
 | |
|     }
 | |
| }
 |