其实我经历在其中提到,当我们需要实现比较接口,我们可以覆盖equals方法教程之一(不过没有必要重写).
所以只是为了更好地理解
我重写方法如下
Test.java
import java.util.TreeSet;
public class Test
{
public static void main(String[] args)
{
TreeSet t = new TreeSet(new MyComparator());
t.add(1);
t.add(1);
t.add(2);
System.out.println(t);
}
}
Run Code Online (Sandbox Code Playgroud)
MyComparator.java
import java.util.Comparator;
public class MyComparator
implements Comparator
{
@Override
public int compare(Object o1, Object o2)
{
Integer i1 = (Integer) o1;
Integer i2 = (Integer) o2;
return i1.compareTo(i2);
}
@Override
public boolean equals(Object o1)
{
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
对于其他场景
import java.util.Comparator;
public class MyComparator
implements Comparator
{
@Override
public int …Run Code Online (Sandbox Code Playgroud) 我正在学习休眠......
@Id
@GeneratedValue(generator="foreign")
@GenericGenerator(name="foreign", strategy="foreign", parameters={
@Parameter(name="property" ,value="company")
})
public Long getId() {
return id;
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我理解除了这些行之外的大部分内容
parameters={
@Parameter(name="property" ,value="company")
}
Run Code Online (Sandbox Code Playgroud)
请帮忙