黑马程序员技术交流社区

标题: 为什么不行 [打印本页]

作者: 747437484    时间: 2013-12-26 01:55
标题: 为什么不行
本帖最后由 747437484 于 2013-12-29 21:27 编辑

package com;
import java.util.List;
import java.util.ArrayList;  

public class test1 {  

    public static void main(String [] args) {  
            testA();
    }  

    //去掉数组中重复的值  
    public static void testA() {  
       int [] str = {1,2,3,4,1,2};  
        for (int elementA:str ) {  
            System.out.print(elementA + " ");  
        }  
     List<String> list = new ArrayList<String>();  
    for (int i=0; i<str.length; i++) {  
        if(!list.contains(str)) {  
            list.add(str);  //这不通过
        }  
    }  
    System.out.println(list);
}
}


作者: 小骗子    时间: 2013-12-26 02:01
List<String> list = new ArrayList<String>();  //类型定义有问题

str 是int型的,你这列表定义的是String
作者: 松毛    时间: 2013-12-26 07:56
int [] str = {1,2,3,4,1,2};    数组中的元素师int型的
List<String> list = new ArrayList<String>();   而List集合中却是要存放的String类型的;
所以str中的元素是添加不到list集合中的。
作者: 75100313    时间: 2013-12-26 15:14
这里面涉及到一个类型转换的问题  解决方法我在代码里面写出来了
  1. import java.util.List;
  2. import java.util.ArrayList;

  3. public class test {

  4.         public static void main(String[] args) {
  5.                 testA();
  6.         }

  7.         // 去掉数组中重复的值
  8.         public static void testA() {
  9.                 int[] str = { 1, 2, 3, 4, 1, 2 };
  10.                 for (int elementA : str) {
  11.                         System.out.print(elementA + " ");
  12.                 }
  13.                 System.out.println();
  14.                 List<String> list = new ArrayList<String>();
  15.                 for (int i = 0; i < str.length; i++) {
  16.                         // list 里面是String类型 str里面是int类型 涉及到转换问题
  17.                         // int 类型转换为字符串类型 str[i] + ""
  18.                         if (!list.contains(str[i] + "")) {
  19.                                 list.add(str[i] + "");
  20.                         }
  21.                 }
  22.                 System.out.println(list);
  23.         }
  24. }
复制代码

作者: 郭振华    时间: 2013-12-26 22:42
你用泛型了,可是你添加的数据类型和泛型不匹配。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2