我现在没开发环境,在网吧,那位好心兄弟帮我写一个简单类,进来看看也好

20040216 2006-01-03 10:17:24
一个老乡的作业
写一个集合类,实现整数集合的交集和并集运算,+表示求并集,*表示求交集

思路很简单
这个类有个arraylist型的私有成员比如data,用来保存集合的数据
有一个add方法,用来向data中添加数据,然后重载一下+和*操作符,
将a+b的结果保存在a中
求并集就是循环比较将a集合中没有的数据加入a集合的data,求交集就是将a集合中有的数据删除出data

谢谢好心兄弟,在线等
...全文
313 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
20040216 2006-01-05
  • 打赏
  • 举报
回复
求交集应该是
if(this.indexOf(new Integer(uv.get(i)))!=-1)
{
temp.add(this.get(i));
}
才加入吧
谢谢兄弟了,结贴
wfront 2006-01-03
  • 打赏
  • 举报
回复

/******************************/
/*java是没有操作符重载的
/*交集:and()
/*并集:or()
/*****************************/
import java.util.Vector;
class UseVector
{
Vector data=null;
public UseVector()
{
data=new Vector();
}
public int indexOf(Object elem)
{
return data.indexOf(elem);
}
public int get(int index)
{
return ((Integer)(data.get(index))).intValue();
}
public void add(int e)
{
data.add(new Integer(e));
}
public int size()
{
return data.size();
}
public UseVector and(UseVector uv)
{
int minSize=(this.size()<uv.size()?this.size():uv.size());
UseVector temp=new UseVector();
for(int i=0;i<minSize;i++)
{
if(this.indexOf(new Integer(uv.get(i)))==-1)
{
temp.add(this.get(i));
}
}
return temp;
}
public UseVector or(UseVector uv)
{
UseVector temp=new UseVector();
for (int i=0;i<this.size();i++ )
{
temp.add(this.get(i));
}
for(int i=0;i<uv.size();i++)
{
if(temp.indexOf(new Integer(uv.get(i)))==-1)
{
temp.add(uv.get(i));
}
}
return temp;
}
public void print()
{
for (int i=0;i<data.size() ;i++ )
{
System.out.print(this.get(i)+" ");
System.out.println();
}
}
public static void main(String[] args)
{
UseVector a=new UseVector();
UseVector b=new UseVector();
for(int i=0;i<10;i++)
{
a.add(i);
b.add(i+5);
}
UseVector c=a.and(b);
c.print();
UseVector d=a.or(b);
d.print();
}
}
20040216 2006-01-03
  • 打赏
  • 举报
回复
要求用java,学校的作业比较变态
20040216 2006-01-03
  • 打赏
  • 举报
回复
我不会java,一年前用了一个月
那位兄弟写个代码吧,谢谢了
topgun_007 2006-01-03
  • 打赏
  • 举报
回复
用c++啊
支持操作符重载
shenpipi 2006-01-03
  • 打赏
  • 举报
回复
java哪里来的重载操作符?
再说,写程序又不要开发环境,记事本足以。当然,编译另说。
qiuli 2006-01-03
  • 打赏
  • 举报
回复
JAVA就是不可以重载运算符
20040216 2006-01-03
  • 打赏
  • 举报
回复
那怎么办啊
leeight 2006-01-03
  • 打赏
  • 举报
回复
java中好像不可以重载运算符的...
20040216 2006-01-03
  • 打赏
  • 举报
回复
顶一下
songguang811 2006-01-03
  • 打赏
  • 举报
回复
脑袋看晕忽忽。
chw8219 2006-01-03
  • 打赏
  • 举报
回复
做运算符重载你直接用C++啦!
msnsnd 2006-01-03
  • 打赏
  • 举报
回复
没听说java有重载运算符的说法!
自己自足,自己动手风衣足食!
Yanbin_Q 2006-01-03
  • 打赏
  • 举报
回复
在网吧请认真聊开吧

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧