由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - Java代码,老是compile出错,大家帮我看看哪错了。。。
相关主题
再来讨论一直算法课的作业吧how to implement binary tree efficiently?
how to write a function take iterators as parameters?stl 源代码疑问
古德八你一次把需求写干净了template
请问这道题怎么解决?linked list vs Binary tree
C++: What is the difference between the two approaches?求大牛指导这道题。结果是什么?
scala大牛幫看看這個map是為什麽?不太明白有否可以O(1)remove 一个元素的java LinkedList推荐?
最新的MS面试题 (转载)A C++ inheritance question!
a question一个C++的概念问题
相关话题的讨论汇总
话题: node话题: iterator话题: public话题: counter话题: return
进入Programming版参与讨论
1 (共1页)
o****i
发帖数: 1706
1
我在git上push到学校的服务器后编译老是不通过,错误如下,麻烦大家帮我查下原因
,谢谢啦!
javac -classpath /usr/share/junit/lib/junit.jar -d classes -sourcepath .
Iterator.java List.java TestUpTree.java UpTree.java
UpTree.java:34: type Iterator does not take parameters
public class NIterator implements Iterator{
^
UpTree.java:104: type Iterator does not take parameters
public class SetIterator implements Iterator{
^
TestUpTree.java:51: type Iterator does not take parameters
Iterator it = up.mkIterator();
^
TestUpTree.java:67: type Iterator does not take parameters
Iterator it;
我的Code 如下,其中的Iterator类,我使用了老师提供的接口:
interface Iterator {
UpTree.Node get();
void next();
boolean isValid();
}
public class UpTree {
public List l ;
public int size;
public class Node{
public String data;
public Node up;
private int size;
public Node(String i){
data = i;
up = null;
size = 1;
}
public int size(){
if(this.up==null)
return size;
else
return 0;
}
}
public UpTree(){
l = new List();
size = 0;
}
public Node add(String i){
Node n = new Node(i);
l.insertAtFront(n);
size++;
return n;
}
public class NIterator implements Iterator{
int counter;
public NIterator(){
counter = 1;
}
public UpTree.Node get(){
if(isValid())
return l.get(counter).data;
else
return null;
}
public void next(){
counter++;
}

public boolean isValid(){
if(counter<=l.size())
return true;
else
return false;
}
}
NIterator mkIterator(){
return new NIterator();
}
public void union(UpTree.Node x, UpTree.Node y){
if(x.size != 0){
x.up = y;
if(y.up==null){
y.size = y.size+x.size;
x.size = 0;
}
else{
Node z = find(y);
z.size = z.size+x.size;
x.size = 0;
}
}
else{
Node z = find(x);
z.up = y;
if(y.up==null){
y.size = y.size+z.size;
z.size = 0;
}
else{
Node a = find(y);
a.size = a.size+z.size;
z.size = 0;
}
}
}
public UpTree.Node find(UpTree.Node y){
if(y.up != null){
return find(y.up);
}
else{
return y;
}
}
public int size(){
return size;
}
public class SetIterator implements Iterator{
int counter;
List sl;
public SetIterator(UpTree.Node x){
sl= new List();
sl.insertAtEnd(find(x));
int count = 1;
int counter = 1;
while(count if(find(x).equals(find(l.get(counter).data))){
sl.insertAtFront(l.get(counter).data);
count++;
}
else
counter++;
}
}
public UpTree.Node get(){
return sl.get(counter).data;
}
public void next(){
counter++;
}

public boolean isValid(){
if(counter<=l.size())
return true;
else
return false;
}
}
SetIterator mkSetIterator(Node x){
return new SetIterator(x);
}
}
r*****l
发帖数: 2859
2
你好歹把完整的程序写出来,格式整整。问问题这态度,没人愿意仔细看的。

【在 o****i 的大作中提到】
: 我在git上push到学校的服务器后编译老是不通过,错误如下,麻烦大家帮我查下原因
: ,谢谢啦!
: javac -classpath /usr/share/junit/lib/junit.jar -d classes -sourcepath .
: Iterator.java List.java TestUpTree.java UpTree.java
: UpTree.java:34: type Iterator does not take parameters
: public class NIterator implements Iterator{
: ^
: UpTree.java:104: type Iterator does not take parameters
: public class SetIterator implements Iterator{
: ^

z****e
发帖数: 54598
3
楼上的太水了,自己copy到ide里面去一目了然
楼主,List是接口,不是实体类,不能new List()
应该new ArrayList() etc.
另外我不知道insertAtEnd这个方法从哪里来的
你抄书上的例子的吧?把这个方法抄一遍
这不是具体接口方法,或者是新版本加的,我现在的版本List没有这个方法
z****e
发帖数: 54598
4
这几个应该是warning,如果你定义了E这个类的话
如果你没有定义class E{...}那么把E换成任意一个实体类
Iterator.java List.java TestUpTree.java UpTree.java
UpTree.java:34: type Iterator does not take parameters
public class NIterator implements Iterator{
^
UpTree.java:104: type Iterator does not take parameters
public class SetIterator implements Iterator{
^
TestUpTree.java:51: type Iterator does not take parameters
Iterator it = up.mkIterator();
^
TestUpTree.java:67: type Iterator does not take parameters
Iterator it;
1 (共1页)
进入Programming版参与讨论
相关主题
一个C++的概念问题C++: What is the difference between the two approaches?
Default function template argumentsscala大牛幫看看這個map是為什麽?不太明白
ajax小问题最新的MS面试题 (转载)
question about using Hive parameter (转载)a question
再来讨论一直算法课的作业吧how to implement binary tree efficiently?
how to write a function take iterators as parameters?stl 源代码疑问
古德八你一次把需求写干净了template
请问这道题怎么解决?linked list vs Binary tree
相关话题的讨论汇总
话题: node话题: iterator话题: public话题: counter话题: return