在Java中通过引用索引号来查找数组的值

xzv2uavs  于 2023-10-14  发布在  Java
关注(0)|答案(4)|浏览(91)

在python中,仅通过引用列表的索引号来调用列表的值是通过

array = [1, 2, 3, 4, 5,]
return array[0]

返回
1
在java中有类似的方法吗?我只能找到一个数组的调用值,并使用indexOf()获取它们的索引。

ArrayList<String> wordList = new ArrayList<String>();
wordList.add("desk");
wordList.add("monitor");

return wordList[1];

返回错误
数组是必需的,但ArrayList找到了返回wordList[1];^
我希望它返回索引1中的值,即'monitor'

0mkxixxg

0mkxixxg1#

是的。通过使用一个数组

int[] array = {1, 2, 3, 4, 5};
return array[0]; // for 1, for 2 use array[1], etc.

你也可以用List来做。但是在这里你需要调用List.get(int)而不是[int]。比如

List<String> wordList = List.of("desk", "monitor");
return wordList.get(1); // "monitor"

使用String[],就像int[]

String[] wordArray = { "desk", "monitor" };
return wordArray[1]; // "monitor"
j2cgzkjk

j2cgzkjk2#

这是因为你的wordList是一个类型为ArrayList(ArrayList Object)的Object,而不是一个数组。
尝试创建一个String类型的数组:

String[] wordList = {"array", "items", "here"};
return wordList[2] //Would equal "here"
nzkunb0c

nzkunb0c3#

你把Java数组和ArrayList弄混了。ArrayList是由数组支持的Collection类型。
我不懂Python,所以我只从Java的Angular 来解决这个问题。

// foo is an array of int, and contains 12 elements
int [] foo = new foo (12); 

// bar is an array of int, with 7 elements. 
// the initial values are specified
int [] bar = {14, 92, -42, 48, 0, 0, 13};

一个元素按您所期望的进行寻址:
System.out.println (bar [2]); // prints -42
如果你想使用数组修复你的示例,代码可能看起来像这样:

String [] wordList = {"desk", "monitor"};
System.out.println (wordList[1]); // monitor

集合比数组更灵活。一个注意事项是数组有固定的大小,而大多数集合对象将根据需要增加其大小。假设使用了一个数组,发现它太小了。要继续,必须创建一个新数组,将旧数组的内容复制到新数组中,并丢弃旧数组。
如果你想修复你的Java示例以使用ArrayList,它可能看起来像这样:

ArrayList<String> wordList = new ArrayList<String>();
wordList.add("desk");
wordList.add("monitor");

return wordList.get(1);
hfsqlsce

hfsqlsce4#

  • ".在java中有类似的方法吗?我只能找到一个数组的调用值,并使用indexOf()获取它们的索引。..."*

不是一个 * 名单 。在 Java 中, 括号语法 * 专门用于 * 数组表示法 *。

相关问题