黑马程序员技术交流社区
标题:
为什么不行
[打印本页]
作者:
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
这里面涉及到一个类型转换的问题 解决方法我在代码里面写出来了
import java.util.List;
import java.util.ArrayList;
public class test {
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 + " ");
}
System.out.println();
List<String> list = new ArrayList<String>();
for (int i = 0; i < str.length; i++) {
// list 里面是String类型 str里面是int类型 涉及到转换问题
// int 类型转换为字符串类型 str[i] + ""
if (!list.contains(str[i] + "")) {
list.add(str[i] + "");
}
}
System.out.println(list);
}
}
复制代码
作者:
郭振华
时间:
2013-12-26 22:42
你用泛型了,可是你添加的数据类型和泛型不匹配。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2