我创建了一个整数列表,并尝试返回特定值的索引.数组是3,8,2,5,1,4,7,6,我想返回indexOf(3),它应该是0.
在导入java.util之后,我在Eclipse Java Scrapbook中尝试了以下内容.*:
int[] A = {3,8,2,5,1,4,7,9};
Arrays.asList(A).indexOf(3)
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
int[] A = {3,8,2,5,1,4,7,6};
ArrayList<Integer> l = new ArrayList(Arrays.asList(A));
l.indexOf(3)
Run Code Online (Sandbox Code Playgroud)
两者都返回-1.为什么?如何让它按预期工作?
Lou*_*man 34
Arrays.asList(A)
返回一个List<int[]>
.这是因为它需要一个对象数组,而不是基本类型.您的选择包括:
Integer[]
而不是int[]
Arrays.asList(3,8,2,5,1,4,7,9)
会很好的Ints.asList(int...)
方法将原始数组视为a List<Integer>
.(披露:我向番石榴捐款.)Ints.indexOf(int[], int)
,它直接在原始数组上工作.Eug*_*sky 26
它应该Integer[]
不是int[]
为了使它工作.
Integer[] A = {3,8,2,5,1,4,7,9};
final int i = Arrays.asList(A).indexOf(3);
System.out.println("i = " + i); // prints '0'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
14510 次 |
最近记录: |