Java 正在尝试返回数组中元素的位置,但打印时遇到问题
我正在编写这段代码来打印这个数组中的位置,我想在获取返回值时,我所有的代码都是正确的,但是我还没有得到任何值;在屏幕上打印。我尝试调用arrayLength方法进行打印,但得到的唯一错误是arrayLength无法解析为变量。所以我不确定打印哪个变量Java 正在尝试返回数组中元素的位置,但打印时遇到问题,java,Java,我正在编写这段代码来打印这个数组中的位置,我想在获取返回值时,我所有的代码都是正确的,但是我还没有得到任何值;在屏幕上打印。我尝试调用arrayLength方法进行打印,但得到的唯一错误是arrayLength无法解析为变量。所以我不确定打印哪个变量 public class Generics { static List<Integer> list = new ArrayList<Integer>(); Integer[] array =
public class Generics {
static List<Integer> list = new ArrayList<Integer>();
Integer[] array = {2, 4, 6, 8};
Integer s= list.get(0);
int arrayLength(int[] array, int value) {
for (int i = 0; i < array.length; i++) {
if(array[i]==value) {
return i;
}
}
return -1;
}
public static void main(String[] args) {
System.out.println(arrayLength);
}
}
我相信您正在尝试打印函数而不是返回值。 如果替换System.out.printlnarrayLength;使用System.out.printlnarrayLengtharray,4; 它应该打印数组中4的索引
同样如注释中所述,arrayLength方法需要是静态的,才能从主方法调用;提供IndexOutOfBoundsException,因为列表为空,因此无法检索第一个元素
public class Generics {
static int[] array = {2, 4, 6, 8};
static int arrayLength(int[] array, int value) {
for (int i = 0; i < array.length; i++) {
if(array[i]==value) {
return i;
}
}
return -1;
}
public static void main(String[] args) {
System.out.println(arrayLength(array, 2));
System.out.println(arrayLength(array, 4));
System.out.println(arrayLength(array, 6));
System.out.println(arrayLength(array, 8));
}
}
抱歉,您的代码不完整且不可读。请发布所有内容,并正确设置格式。IDE只需一个键盘快捷键即可完成此操作。您必须从main.add static到arrayLength方法调用此方法您正在尝试打印名为arrayLength的变量。虽然允许使用相同名称的方法,但它们是不同的概念。除了lambda表达式的de上下文之外,没有括号的标识符始终是变量,但这是另一回事。