Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 具有int和int[]参数的方法_Java_Arrays - Fatal编程技术网

Java 具有int和int[]参数的方法

Java 具有int和int[]参数的方法,java,arrays,Java,Arrays,我有一个有两个参数的方法,但它们是不同的类型(int,int[])。问题在于调用方,Eclipse不会编译,因为它说这两个参数都需要是整数类型。调用方如下所示: boolean uniqueTorF = isUnique(count, userArray[i]); boolean foo = isUnique(count, userArray); 方法如下: public static boolean isUnique(int oneCount, int[] multiCount) {

我有一个有两个参数的方法,但它们是不同的类型(int,int[])。问题在于调用方,Eclipse不会编译,因为它说这两个参数都需要是整数类型。调用方如下所示:

boolean uniqueTorF = isUnique(count, userArray[i]);
boolean foo = isUnique(count, userArray);
方法如下:

public static boolean isUnique(int oneCount, int[] multiCount) {
    for (int i = 0; i < multiCount.length; i++) {
        if (oneCount == multiCount[i]) {
            return false;
        }
    }
    return true;
}
publicstaticbooleanique(int-oneCount,int[]multiCount){
for(int i=0;i
这是我的全部代码:

public static void main(String[] args) {

    int[] userArray;
    userArray = new int[5];
    int validCount = 0, i = 0, uniqueSoFar = 0;

    System.out.println("Please print out 5 numbers between 50 and 100. ");
    Scanner entry = new Scanner(System.in);

    while (validCount < 5) {
        int count = entry.nextInt();

        boolean validTorF = isValid(count);
        boolean uniqueTorF = isUnique(count, userArray[i]);

        if (validTorF == true) {

            userArray[i] = count;
            validCount++;
            i++;

            if (uniqueTorF == true){
                uniqueSoFar++;
            }

        } else {
            System.out.println("That is not a valid number.");
        }



    }
}

public static boolean isValid(int validParameter) {
    if (validParameter > 50 && validParameter < 100) {
        return true;
    } else {
        return false;

    }
}

public static boolean isUnique(int oneCount, int[] multiCount) {
    for (int i = 0; i < multiCount.length; i++) {
        if (oneCount == multiCount[i]) {
            return false;

        }
    }
    return true;
}
publicstaticvoidmain(字符串[]args){
int[]用户数组;
userArray=newint[5];
int validCount=0,i=0,uniqueSoFar=0;
System.out.println(“请打印出5个介于50和100之间的数字”);
扫描仪条目=新扫描仪(System.in);
while(有效计数<5){
int count=entry.nextInt();
布尔值validTorF=isValid(计数);
布尔uniqueTorF=isUnique(count,userArray[i]);
如果(validTorF==true){
userArray[i]=计数;
validCount++;
i++;
if(uniqueTorF==true){
uniqueSoFar++;
}
}否则{
System.out.println(“这不是一个有效的数字。”);
}
}
}
公共静态布尔值isValid(int validParameter){
如果(有效参数>50和有效参数<100){
返回true;
}否则{
返回false;
}
}
公共静态布尔值是唯一的(int-oneCount,int[]多个){
for(int i=0;i

}

去掉索引
[i]
userArray[i]
是数组的单个元素
userArray
是整个数组

boolean uniqueTorF = isUnique(count, userArray);

定义的方法要求第二个参数为数组,而调用方正在发送特定元素。因此,将整个数组作为参数发送

我敢打赌它说参数都是整数类型,而不是它们应该是。您正在传递
count
userArray[i]
,但您可能应该传递
count
userArray
错误的原因是您传递的参数错误

执行此操作时:

boolean foo = isUnique(count, userArray[i]);
然后用2个int参数调用该方法,但需要一个int,int[]

你肯定在寻找更像这样的东西:

boolean uniqueTorF = isUnique(count, userArray[i]);
boolean foo = isUnique(count, userArray);

我不知道
userArray
是什么类型,但您可能没有将正确的类型传递给
isUnique()
isUnque()
要求将
int
作为第一个参数,将
int
数组(即
int[]
)作为第二个参数。布尔uniqueTorF=isUnique(count,userArray[i]);userArray的类型是什么??是int[]吗?如果要将int数组作为第二个参数,为什么要从该数组中传递元素i?我从哪里来的?您必须传递userArray,而不是userArray[i]。。。