Class SequencesComparator<T>
- Type Parameters:
- T- the type of elements in the lists.
 The two sequences can hold any object type, as only the equals
 method is used to compare the elements of the sequences. It is guaranteed
 that the comparisons will always be done as o1.equals(o2) where
 o1 belongs to the first sequence and o2 belongs to
 the second sequence. This can be important if subclassing is used for some
 elements in the first sequence and the equals method is
 specialized.
 
 Comparison can be seen from two points of view: either as giving the smallest
 modification allowing to transform the first sequence into the second one, or
 as giving the longest sequence which is a subsequence of both initial
 sequences. The equals method is used to compare objects, so any
 object can be put into sequences. Modifications include deleting, inserting
 or keeping one object, starting from the beginning of the first sequence.
 
 This class implements the comparison algorithm, which is the very efficient
 algorithm from Eugene W. Myers
 
 An O(ND) Difference Algorithm and Its Variations. This algorithm produces
 the shortest possible
 edit script
 containing all the
 commands
 needed to transform the first sequence into the second one.
 
- Since:
- 4.0
- See Also:
- 
Constructor SummaryConstructors
- 
Method Summary
- 
Constructor Details- 
SequencesComparatorSimple constructor.Creates a new instance of SequencesComparator using a DefaultEquator.It is guaranteed that the comparisons will always be done as o1.equals(o2)whereo1belongs to the first sequence ando2belongs to the second sequence. This can be important if subclassing is used for some elements in the first sequence and theequalsmethod is specialized.- Parameters:
- sequence1- first sequence to be compared
- sequence2- second sequence to be compared
 
- 
SequencesComparatorSimple constructor.Creates a new instance of SequencesComparator with a custom Equator.It is guaranteed that the comparisons will always be done as Equator.equate(o1, o2)whereo1belongs to the first sequence ando2belongs to the second sequence.- Parameters:
- sequence1- first sequence to be compared
- sequence2- second sequence to be compared
- equator- the equator to use for testing object equality
 
 
- 
- 
Method Details- 
getScriptGets theEditScriptobject.It is guaranteed that the objects embedded in the insert commandscome from the second sequence and that the objects embedded in either thedelete commandsorkeep commandscome from the first sequence. This can be important if subclassing is used for some elements in the first sequence and theequalsmethod is specialized.- Returns:
- the edit script resulting from the comparison of the two sequences
 
 
-