A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© coco2016 中级黑马   /  2016-7-27 13:09  /  576 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.heima.test;
import java.util.Comparator;
import java.util.TreeSet;
public class Test2 {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                TreeSet<String> ts = new TreeSet<>(new CompareBy());
                ts.add("zhansan");
                ts.add("lisi");
                ts.add("wangwu");
                ts.add("zhaoliu");
                }
class CompareBy implements Comparator<String> {
       
        @Override
        public int compare(String o1, String o2) {
                // TODO Auto-generated method stub
                int num = o1.length()-o2.length();
                return num == 0 ? o1.compareTo(o2): num;
        }
       
}
}
为什么会报错啊?

捕获.PNG (56.36 KB, 下载次数: 7)

捕获.PNG

2 个回复

倒序浏览
CompareBy是内部类,使用内部类的实例应当是new Test2().new CompareBy(),或者将CompareBy类放到外面
回复 使用道具 举报
Frankle 发表于 2016-7-27 14:56
CompareBy是内部类,使用内部类的实例应当是new Test2().new CompareBy(),或者将CompareBy类放到外面 ...

谢谢,修改过来就可以。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马