A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马-小龙 中级黑马   /  2013-1-25 23:35  /  1272 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张向辉 于 2013-1-27 10:36 编辑

这样的一个题,说什么如何去掉Vector里面的重复元素
Vector newVector = new Vector();
For (int i=0;i<vector.size();i++)
{

Object obj = vector.get(i);//获取添加的数据,返回Object类型

if(!newVector.contains(Vector);//判断如果集中没的元素不属于Vertor就重写添加一个

newVector.add(obj);

}

为什么这样编写错误呢?求大神解释啊

4 个回复

倒序浏览
这样的一个题,说什么如何去掉Vector里面的重复元素
Vector newVector = new Vector();
For (int i=0;i<vector.size();i++)
{

Object obj = vector.get(i);//获取添加的数据,返回Object类型

if(!newVector.contains(Vector);//判断如果集中没的元素不属于Vertor就重写添加一个-------------------这里错了哦
因为前面已经用obj记录了原集合的元素,应该改成:
if(!newVector.contains(obj))

newVector.add(obj);

}

循环结束后,还要返回该新的集合;
return newVector;
回复 使用道具 举报
把你的程序写完整吧,而且这上面的写得太乱。。。
回复 使用道具 举报
  1. import java.util.*;//1.注意导包

  2. class  VectorTest
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                
  7.                 Vector ve = new Vector();
  8.                 ve.add("java01");
  9.                 ve.add("java02");
  10.                 ve.add("java01");
  11.                 ve.add("java02");
  12.                 ve.add("java03");               
  13.                 sop("原集合...."+ve);
  14.                 ve = changeVector(ve);
  15.                 sop("新集合...."+ve);

  16.         }
  17.         public static void sop(Object obj)
  18.         {
  19.                 System.out.println(obj);
  20.         }
  21.        
  22.         public static Vector changeVector(Vector ve)
  23.         {
  24.                 Vector newVector = new Vector();//2.建立新集合
  25.                
  26.                 Iterator it = ve.iterator();//3.用原集合中的迭代器
  27.                
  28.                 while(it.hasNext())
  29.                 {
  30.                         Object obj = it.next();
  31.                         if(!newVector.contains(obj))//4.传入obj记录的原集合的元素

  32.                                 newVector.add(obj);
  33.                 }
  34.                 return newVector;//5.该功能返回一个该新集合
  35.         }
  36. }
复制代码
回复 使用道具 举报

  1. import java.util.*;

  2. class  VectorTest
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                
  7.                 Vector ve = new Vector();
  8.                 ve.add("java01");
  9.                 ve.add("java02");
  10.                 ve.add("java01");
  11.                 ve.add("java02");
  12.                 ve.add("java03");               
  13.                 sop("原集合...."+ve);
  14.                 //ve = changeVector(ve);
  15.                 ve = changeVector_2(ve);
  16.                 sop("新集合...."+ve);

  17.         }
  18.         public static void sop(Object obj)
  19.         {
  20.                 System.out.println(obj);
  21.         }
  22.        
  23.         public static Vector changeVector(Vector ve)
  24.         {
  25.                 Vector newVector = new Vector();
  26.                
  27.                 Iterator it = ve.iterator();
  28.                
  29.                 while(it.hasNext())
  30.                 {
  31.                         Object obj = it.next();
  32.                         if(!newVector.contains(obj))

  33.                                 newVector.add(obj);
  34.                 }
  35.                 return newVector;
  36.         }

  37.         public static Vector changeVector_2(Vector ve)
  38.         {
  39.                
  40.                 Vector newVector = new Vector();
  41.                 for (int i=0;i<ve.size();i++)
  42.                 {

  43.                         Object obj = ve.get(i);//获取添加的数据,返回Object类型

  44.                         if(!newVector.contains([color=Red]obj)[/color])//判断如果集中没的元素不属于Vertor就重写添加一个

  45.                                 newVector.add(obj);

  46.                 }
  47.                 return newVector;
  48.         }
  49. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
Rancho_Gump + 1 很给力!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马