java中TreeSet的排序问题

TreeSet中有1,2,3,4,5,6,7,8,9,10。TreeSetset=newTreeSet(newComparator(){.......});请问那个匿名内... TreeSet中有1,2,3,4,5,6,7,8,9,10。TreeSet set=new TreeSet(new Comparator(){.......});请问那个匿名内部类怎么写,才能让TreeSet中的数字:奇数在前,偶数在后,奇数升序,偶数降序。 展开
 我来答
百度网友27642d3
2010-05-22 · TA获得超过681个赞
知道小有建树答主
回答量:236
采纳率:0%
帮助的人:355万
展开全部
import java.util.Comparator;
import java.util.TreeSet;

public class MyDemo {
public static void main(String [] a){
TreeSet set=new TreeSet(
new Comparator(){
int r=0;
public int compare(Object a, Object b) {
int n1=Integer.parseInt(a.toString());
int n2=Integer.parseInt(b.toString());
if(n1%2!=n2%2){
r=(n2%2-n1%2);
}else if(n1%2==1){
if(n1>n2) r=1;
else if(n1<n2) r=-1;
}else if(n1%2==0){
if(n1>n2) r=-1;
else if(n1<n2) r=1;
}
return r;

}
}
);
set.add("1");
set.add("2");
set.add("3");
set.add("4");
set.add("5");
set.add("6");
set.add("7");
set.add("8");
set.add("9");
set.add("10");
System.out.println(set);

}
}

参考资料: 希望对你有帮助!

书菁暨鸿德
2020-06-06 · TA获得超过3842个赞
知道大有可为答主
回答量:3061
采纳率:27%
帮助的人:166万
展开全部
import
java.util.Comparator;
import
java.util.TreeSet;
public
class
MyDemo
{
public
static
void
main(String
[]
a){
TreeSet
set=new
TreeSet(
new
Comparator(){
int
r=0;
public
int
compare(Object
a,
Object
b)
{
int
n1=Integer.parseInt(a.toString());
int
n2=Integer.parseInt(b.toString());
if(n1%2!=n2%2){
r=(n2%2-n1%2);
}else
if(n1%2==1){
if(n1>n2)
r=1;
else
if(n1<n2)
r=-1;
}else
if(n1%2==0){
if(n1>n2)
r=-1;
else
if(n1<n2)
r=1;
}
return
r;
}
}
);
set.add("1");
set.add("2");
set.add("3");
set.add("4");
set.add("5");
set.add("6");
set.add("7");
set.add("8");
set.add("9");
set.add("10");
System.out.println(set);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式