黑马程序员技术交流社区
标题:
compareTo覆盖问题
[打印本页]
作者:
生活无极限
时间:
2015-5-11 19:31
标题:
compareTo覆盖问题
mport java.io.*;
import java.util.*;
public class Test5 {
public static void main(String [] args)throws Exception{
writerTo();
show();
}
public static void writerTo()throws Exception{
FileWriter fw=new FileWriter("Hi.txt");
fw.write("61.54.231.245\r\n");
fw.write("61.54.231.9\r\n");
fw.write("61.54.231.246\r\n");
fw.write("61.53.231.249\r\n");
//fw.flush();
fw.close();
}
public static void show()throws Exception{
BufferedReader bufr=new BufferedReader(new FileReader("Hi.txt"));
String line=null;
Set<IPAr> stree=new TreeSet<IPAr>();
int x=0;
while((line=bufr.readLine())!=null){
String s=line;
stree.add(new IPAr(line));
}
bufr.close();
for(IPAr a:stree){
System.out.println(a);
}
}
}
class IPAr implements Comparable<IPAr>{///问题就在这里,我明明覆盖了compareTo方法,为什么命令行总是说没覆盖呢,
private String ip;
IPAr(String ip){
this.ip=ip;
}
public int compareTo(Object obj){
if(!(obj instanceof IPAr))
throw new RuntimeException("地址错误");
IPAr a=(IPAr)obj;
String[] sa=a.ip.split(".");
String[] s=this.ip.split(".");
for(int x=0;x<s.length;x++){
int y=Integer.parseInt(s[x])-Integer.parseInt(sa[x]);
if(y!=0)
return y;
}
return 0;
}
}
作者:
Doug
时间:
2015-5-11 19:31
public int compareTo(IPAr o) {
// TODO Auto-generated method stub
return 0;
}
你指定泛型了
作者:
生活无极限
时间:
2015-5-11 22:24
Doug 发表于 2015-5-11 19:31
public int compareTo(IPAr o) {
// TODO Auto-generated method stub
return 0;
感谢万分,就是这么的一个小插曲搞得我够狼狈!!!
作者:
过路人
时间:
2015-5-13 22:49
代码太长了,没有耐心看完...
作者:
熊猫宝宝
时间:
2015-5-14 00:19
嗯,受教
作者:
行知灬哒
时间:
2015-5-14 11:08
帮顶一下 这个还没看到
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2