Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.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中对象数组中的元素匹配,则返回一个值_Java - Fatal编程技术网

如果输入与java中对象数组中的元素匹配,则返回一个值

如果输入与java中对象数组中的元素匹配,则返回一个值,java,Java,如果输入与对象数组中的任何id元素匹配,我想返回值1,否则返回-1 例如 27 vjxiyhc 共青团 34 奥古伊 库克萨尼 10 oxhdjcs gvhtlzw 19 塔姆克夫 阿里克勒 32 cvljyye 海伊基夫 34 输出应为1。如果最后一次输入为25,则输出应为-1 下面给出的代码工作不正常。它只检查数组中最后一个输入的id值。如果我输入27或10或19,它仍然返回-1。只有32返回1。请提出修改建议。 公共类LibraryDemo { 公共静态库[]searchLibraryB

如果输入与对象数组中的任何id元素匹配,我想返回值
1
,否则返回
-1

例如
27
vjxiyhc
共青团
34
奥古伊
库克萨尼
10
oxhdjcs
gvhtlzw
19
塔姆克夫
阿里克勒
32
cvljyye
海伊基夫
34
输出应为
1
。如果最后一次输入为
25
,则输出应为
-1

下面给出的代码工作不正常。它只检查数组中最后一个输入的id值。如果我输入
27
10
19
,它仍然返回
-1
。只有
32
返回
1
。请提出修改建议。

公共类LibraryDemo
{
公共静态库[]searchLibraryById(库[]objArray,int-inputid)
{
int out=0;

对于(int i=0;i您需要在找到输入值后中断循环。
out
将被覆盖,因为即使在找到匹配项后,您仍会继续检查剩余的数组索引

for(int i=0;i<objArray.length;i++)
{
    if (objArray[i].id==inputid)
    {
        out=1;
        break; // found match, break out of loop
    }
    else 
    {
        out=-1;
    }
}
System.out.print(out);

for(int i=0;i匹配后,您不会中断for循环。如果数组中没有大量使用并行流的对象,则可以更有效地执行此操作。请参阅下面的代码

import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import static java.util.stream.Collectors.toList;

 public static Library[] searchLibraryById(Library[] objArray, int inputid)
    {
        List<Library> lib = Arrays.asList(objArray).parallelStream()
                .filter(obj -> obj.id == inputid).collect(toList());
        int out = lib.size() != 0 ? 1 : -1;
        System.out.println(out);
        return objArray;
    }
导入java.util.array;
导入java.util.List;
导入java.util.Scanner;
导入静态java.util.stream.Collectors.toList;
公共静态库[]searchLibraryById(库[]objArray,int-inputid)
{
List lib=Arrays.asList(objArray.parallelStream())
.filter(obj->obj.id==inputid.collect(toList());
int out=lib.size()!=0?1:-1;
System.out.println(out);
返回objArray;
}
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import static java.util.stream.Collectors.toList;

 public static Library[] searchLibraryById(Library[] objArray, int inputid)
    {
        List<Library> lib = Arrays.asList(objArray).parallelStream()
                .filter(obj -> obj.id == inputid).collect(toList());
        int out = lib.size() != 0 ? 1 : -1;
        System.out.println(out);
        return objArray;
    }