我试图将java中的对象数组作为方法的参数传递。我想填充该数组中的对象并返回对象的完整数组。当我尝试执行此操作时,编译器给我一个参数错误 “语法错误,插入“ ... VariableDeclaratorId”以完成 “ FormalParameterList”可能意味着很多不同的东西。是否还有其他我没有考虑或忘记的语法?代码在下面
public Object[] makeObjects(Object[], int choice) {
// ^^^ Error is here
}
答案 0 :(得分:1)
您需要在函数定义中为对象数组命名。
public Object[] makeObjects(Object[] name, int choice) {
}
答案 1 :(得分:1)
public Object[] makeObjects(Object[], int choice) {
// ^^^ Error is here
}
必须为您的所有参数命名。你想要这样的东西...
public Object[] makeObjects(Object[] someVariableName, int choice) {
// ...
}
答案 2 :(得分:0)
我错误地理解您只需要一个参数:“假设您想要一个称为choice
的参数,它是一个整数数组。”
public Object[] makeObjects(int[] choice) {
// insert your code here
}
进一步分析评论后,我向您提出疑问。
public Object[] makeObjects(Object[] options, int choice) {
// insert your code here
}
只是缺少变量名,而不是错误定义的变量类型。
答案 3 :(得分:0)
问题是您忘记了Object[]
的参数名称:
public Object[] makeObjects(Object[] items, int choice) {}
您可能需要考虑的另一件事,如果您的方法需要我更灵活,则可以使用Object...
语法,但是您必须为此交换参数:
public Object[] makeObjects(int choice, Object... items) {}
这允许您传递参数的动态列表或普通数组:
makeObjects(choice, item0, item1, item2)
Object[] items = new Object[] {};
makeObjects(choice, items);