CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

数组

楼主longer84()2006-12-04 10:56:50 在 Java / J2SE / 基础类 提问

{1,2,3,4,5,6,7,8,9,1,4,5,6,3}怎么去掉重复的值?不能用Set等! 问题点数:10、回复次数:18Top

1 楼smyl9989(☆☆☆☆☆)回复于 2006-12-04 11:01:00 得分 0

用循环一个一个对比   ...   这个效率不是太高啊Top

2 楼jianghuxiaoxiami(江湖小虾米)回复于 2006-12-04 11:08:14 得分 0

可以把元素取出来,作为key存入   Hashtable(value随便用一个),然后在读取Hashtable元素就行,  
  PS:利用Hashtable自动去除重复项Top

3 楼bill111(有我你别怕!)回复于 2006-12-04 11:48:11 得分 0

如果不用Set,List,Hashtable等,只能用用循环了。  
  Integer   array[]   =   new   Integer[]   {   1,   2,   3,   4,   5,   6,   7,   8,   9,   1,   4,   5,6,   3   };  
  StringBuffer   buf   =   new   StringBuffer();  
  for   (int   i   =   0;   i   <   array.length;   i++)   {  
  String   temp   =   new   String(array[i].toString());  
  if   (buf.indexOf(temp)   >=   0)   {  
  continue;  
  }   else  
  buf.append(array[i]);  
  }  
  我这样做不知道可行,有最佳答案吗?Top

4 楼malligator(十步之内没有我的爱人)回复于 2006-12-04 14:10:02 得分 0

排序,  
   
  再把相邻的同样的Item删除Top

5 楼malligator(十步之内没有我的爱人)回复于 2006-12-04 14:11:34 得分 0

排序可以用插入排序,遇到重复(有相等的)的就不进行插入Top

6 楼longer84()回复于 2006-12-04 16:14:26 得分 0

bill111(有我你别怕!)   如果不是Integer类型     是int型呢?Top

7 楼bill111(有我你别怕!)回复于 2006-12-04 19:34:40 得分 0

这里的高手太多了,不知道我说的对不对!我记得Integer好象是封装类型,int是原始类型,Integer类在某对象中打包了原始类型为int的值。如果不用Integer用int的话,就用循环一个一个对比   。Top

8 楼jy02209334(失意中......)回复于 2006-12-04 20:14:11 得分 0

用楼上的方法,是int   +""就可以了Top

9 楼longer84()回复于 2006-12-07 15:07:19 得分 0

在上面的代码里Integer类型怎么转成int类型呢?Top

10 楼88324877(寂寞呆头鱼)回复于 2006-12-07 15:13:00 得分 0

Integer   pp=new   Integer(pp);  
  int   tt=pp.intValue()   ;  
  楼上的,要学会查API文档Top

11 楼88324877(寂寞呆头鱼)回复于 2006-12-07 15:14:08 得分 0

int   qq=55;  
  Integer   pp=new   Integer(qq);  
  int   tt=pp.intValue()   ;Top

12 楼jon_wd()回复于 2006-12-07 17:34:33 得分 0

import   java.util.ArrayList;  
   
  public   class   test1   {  
          public   static   void   main(String[]   args)   {  
                  int   s[]   =   new   int[]{1,2,3,4,5,6,7,8,9,1,4,5,6,3};  
                  Vector   temp   =   new   Vector();  
                  ArrayList   wd   =   new   ArrayList();  
                  for   (int   i   =   0;   i   <   s.length;   i++){  
                          while   (wd.remove(String.valueOf(s[i]))){  
                          }  
                          wd.add(String.valueOf(s[i]));  
                  }  
                   
                  for   (int   i   =   0;   i   <   wd.size();   i++){  
                          System.out.println(wd.get(i));  
                  }  
          }  
  }Top

13 楼jon_wd()回复于 2006-12-07 17:45:06 得分 10

import   java.util.ArrayList;  
   
  public   class   test1   {  
          public   static   void   main(String[]   args)   {  
                  int   s[]   =   new   int[]{1,2,3,4,5,6,7,8,9,1,4,5,6,3};  
                  ArrayList   wd   =   new   ArrayList();  
                  for   (int   i   =   0;   i   <   s.length;   i++){  
                          if   (wd.indexOf(String.valueOf(s[i]))   ==   -1){  
                                  wd.add(String.valueOf(s[i]));  
                          }  
                  }  
                   
                  for   (int   i   =   0;   i   <   wd.size();   i++){  
                          System.out.println(wd.get(i));  
                  }  
          }  
  }Top

14 楼biaoflying(biaoflying)回复于 2006-12-07 18:22:57 得分 0

上面的可以直接用System.out.println(wd)取代最后一个循环。同时感谢你的方法。。Top

15 楼ljq164621155()回复于 2006-12-07 18:43:07 得分 0

有些地方不明白什么意思....是否能注释一下.....谢谢了Top

16 楼assed(我不怕活着)回复于 2006-12-07 20:54:15 得分 0

jon_wd()  
  回答的不错Top

17 楼gfcs19840222(相信时间)回复于 2006-12-07 23:34:06 得分 0

为啥么不用Set  
  设计出来的就是拿来用的。。。Top

18 楼gfcs19840222(相信时间)回复于 2006-12-07 23:42:47 得分 0

int[]   A   =   {1,2,3,4,5,6,7,8,9,1,4,5,6,3};  
  Set<Integer>   set   =   new   HashSet<Integer>();  
  for(int   i=0;i<A.length;i++){  
  set.add(new   Integer(A[i]));  
  }  
  for(Integer   inte:set){  
  System.out.println(inte.intValue());  
  }  
   
  用Set多简单啊。。。java设计这些类不就是为了解放程序员吗。。。。干嘛不准用Set....Top

相关问题

关键词

得分解答快速导航

  • 帖主:longer84
  • jon_wd

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo