Java 如何获取数组中值的索引?
我有这样一个数组:Java 如何获取数组中值的索引?,java,arrays,Java,Arrays,我有这样一个数组: String[] array = { "Designation1", "Designation2", "Designation3" }; 如果用户将指定2作为输入,则代码应返回1 这可能是一个非常简单的问题,但我对Java非常陌生。因此,请给出一些建议。您可以循环数组中的字符串,并找到字符串与您要查找的内容匹配的索引 int index = -1; for (int i=0; i<array.length;i++) { if (array[i].equals(
String[] array = { "Designation1", "Designation2", "Designation3" };
如果用户将指定2作为输入,则代码应返回1
这可能是一个非常简单的问题,但我对Java非常陌生。因此,请给出一些建议。您可以循环数组中的字符串,并找到字符串与您要查找的内容匹配的索引
int index = -1;
for (int i=0; i<array.length;i++) {
if (array[i].equals(value)) {
index = i;
break;
}
}
考虑使用列表而不是数组,而不是将数组包装到列表中。通过这种方式,您将可以访问像indexOfelement这样的方法,该方法将返回第一个创建的元素的索引,如果在数组中找不到元素,则返回-1的索引
String[] array = { "Designation1", "Designation2", "Designation3" };
List<String> list = Arrays.asList(array);
System.out.println(list.indexOf("Designation2")); //prints 1
System.out.println(list.indexOf("foo")); //prints -1
您可以使用for循环
String[] array = { "Designation1", "Designation2", "Designation3" };
Scanner kb=new Scanner(System.in);
String input=kb.next();
int index;
for(int i=0;i<array.length;i++)
{
if(array[i].equalsIgnoreCase(input))
index=i;
}
你可以这样做
String userinput="Designation2";
String[] array = { "Designation1", "Designation2", "Designation3" };
int length=array.length();
int index=0;
for(int i=0;i<length;i++)
{
if(array[i].equals(userinput))
{
index=i;
break;
}
}
索引将为您提供用户想要的数组键。
关于..数组没有直接搜索方法,因此需要先将其转换为列表
String[] array = { "Designation1", "Designation2", "Designation3" };
assert Arrays.asList(array).indexOf("Designation2") == 1;
assert Arrays.asList(array).indexOf("Anything else") == -1;
不要忘记-1表示“未找到”
或者您可以对其进行排序并使用binarySearch,您可以使用它
为了完成这项任务,您可以使用两个数组,一个用于键名,另一个用于键值。只需在第一个数组中搜索键,获取键名的索引,并使用它从第二个数组中获取值。这不是最有效的,这可能不是最好的答案,但对我来说很有效 只需确保数组中的索引对齐即可,例如:
{"my","three","keys"};
{"My","Three","Values"};
在这种情况下,键/值设置为:
我的/我的
三/三
键/值
在您的情况下,不需要使用值数组,只需使用索引即可
还可以尝试使用ArrayList而不是数组,因为可以使用ArrayList.indexOfkey获取ArrayList中键的索引
希望这能帮助你和其他人解决这个问题。☺ 那不是钥匙。这是一个价值观。查找一个键,因为它的值是您要查找的。您是指数组索引。对不起。我已经更正了我的问题为什么不使用Map keyValueMap?此外,当数组已经有键-索引时,您正在定义字符串键。老实说,我甚至不知道它的存在!谢谢,@bcsb1001!
{"my","three","keys"};
{"My","Three","Values"};