2010-03-21 69 views
1

当我尝试编译此:类或接口预期的错误(JAVA)

public static int compareCardhl (Card c1, Card c2) 
} 
if (c1.suit > c2.suit) return 1 ; 
if (c1.suit < c2.suit) return -1 ; 
if (c1.rank > c2.rank) return 1 ; 
if (c1.rank < c2.rank) return -1 ; 
return 0; 
} 

我得到了很多类或intereface预期的错误。他们都指向if's。在Card c2)的末尾,我也收到; expected错误。

这里怎么了?

回答

5

第2行支架是错误的,应该是{

+0

你的权利。我很注意这样的事情。 – David 2010-03-21 18:55:38

+1

任何体面的代码编辑器都可以帮助您使用代码块折叠(aka概述)和括号匹配等功能:如果块不能折叠,或者折叠它的行为错误(隐藏太多或太少的行),则出现问题与块的括号。将插入符号放在任意一个托架(开启器或更近)上应突出显示其相应的一对。 – 2010-03-21 19:09:12

+3

就是这样?大声笑。 – 2010-03-21 19:18:04

1

略有建议,如果可以的话,它可能为你正在尝试做的,你的卡类实现了Comparator接口更好

public interface Comparator<T> { 
    public int compare(T t1, T t2); 
} 
+0

为什么我应该使用比较器接口? – David 2010-03-22 00:52:57

+0

嗨大卫, 比较器接口将为您提供开箱即用的所有支持它的集合。比较器的定义是: “返回负整数,零或正整数,因为第一个参数小于,等于或大于第二个参数。” 看起来你试图完成同样的事情,所以不需要重新发明轮子。当您使用已知的界面时,它还将更直观地使用您的API。 希望这是明确的,如果不是,请让我知道。 – Ioannis 2010-03-23 01:32:46

相关问题