[求助]集合的问题
程序代码:
import java.util.*;
public class CollectionTest
{
public static void main(String[] args)
{
Set treeset = new TreeSet();
treeset.add(\"1\");
treeset.add(\"2\");
treeset.add(1);
}
}
为什么以上的程序运行时会说类型不匹配?这个add方法里面的参数是object的呀……传一个数字应该没问题才对啊
----------------解决方案--------------------------------------------------------
java有8中基本数据类型,不是通过继承object实现的,是非面向对象的!
1应该是int的类型,而不是Integer 的吧!!!!!
所以才会有类型不匹配的问题!
个人看法,如果哪里说的不对,请指教!
----------------解决方案--------------------------------------------------------
The abstract class
Number
is the superclass of classes BigDecimal
, BigInteger
, Byte
, Double
, Float
, Integer
, Long
, and Short
.你说的就是这个吧???
----------------解决方案--------------------------------------------------------
Set treeset = new TreeSet();
为什么可以这样声明??
TreeSet()就是一个集合,他能包容任何Object对象,是不是这样理解啊??
----------------解决方案--------------------------------------------------------
我没听懂楼上的意思,抱歉!
----------------解决方案--------------------------------------------------------
Set treeset = new TreeSet();
Set 难道是他从TreeSet类继承出来的新类,所以可以这样声明吗?
----------------解决方案--------------------------------------------------------
他这好象也是有问题,不过因为对他的程序了解不多,就单单只是这几条语句我还是看的不太明白!
嘿嘿!
本人学的不精啊!
----------------解决方案--------------------------------------------------------
就是爱谦虚,你都学而不精,那我们咋整捏??
----------------解决方案--------------------------------------------------------
Set treeset = new TreeSet();
由于TreeSet是Set的子类,所以可以这样写
如果把上面的程序中的TreeSet改为HashSet就没任何问题了……同样是继承自Set接口……
搞不懂啊……明天问老师去……
----------------解决方案--------------------------------------------------------
哦~~~~~~~~~~
----------------解决方案--------------------------------------------------------