2 qq 31930741 qq_31930741 于 2016.04.23 14:22 提问

Java初学者求教,麻烦了

package cn.xtgj.dao;

import java.util.Iterator;
import java.util.Scanner;
import java.util.TreeSet;

import cn.xtgj.model.Wares;

public class Dao {
Scanner sc=new Scanner(System.in);
String option;
TreeSet set=new TreeSet();//此集合用来装商品的信息
//创建Wares对象
Wares w=new Wares();
//商品添加方法
public void addWares(String name){
boolean bl=false;
//验证该商品是否重复
//首先获取迭代器
Iterator it=set.iterator();
//如果集合不为空,就进去里面判断
while(it.hasNext()){
Wares wares=it.next();
if(wares.getName().equals(name)){
System.out.println("该商品已经存在,请重新输入!");
bl=true;
}
}

if(bl==false){
System.out.println("是否添加? 是(Y) 否(N)");
System.out.println("商品名称:"+name);
option=sc.next();
if("y".equalsIgnoreCase(option)){
w.setName(name);
set.add(w);
System.out.println(set);
}

}
}
}

set.add(w);//就这个会报错,我觉得没哪里有问题啊,麻烦大家解释一下,谢谢!

报错的代码如下:
请选择功能: (A)理货员录入 (B)收银员收款 (C)售货统计、盈利结算

a
请输入你选择要输入的商品的信息:(A)名称 (B)进价 (C)单价 (D)数量
a
请输入要添加商品的名称:
毛巾
是否添加? 是(Y) 否(N)
商品名称:毛巾
y
Exception in thread "main" java.lang.ClassCastException: cn.xtgj.model.Wares cannot be cast to java.lang.Comparable
at java.util.TreeMap.compare(Unknown Source)
at java.util.TreeMap.put(Unknown Source)
at java.util.TreeSet.add(Unknown Source)
at cn.xtgj.dao.Dao.addWares(Dao.java:35)
at cn.xtgj.daomain.WaresSystemMain.main(WaresSystemMain.java:26)

3个回答

CSDNXIAON
CSDNXIAON   2016.04.23 14:32

java初学者
C++和JAVA的区别 -- 给初学者看
初学者学Java(十六)
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

qq_31930741
qq_31930741   2016.04.23 14:50

犯了个低级错误,已经做出来了

ljheee
ljheee   Rxr 2016.04.23 14:58

Exception in thread "main" java.lang.ClassCastException强制类型转化错误

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!