Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.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 哪种方法更有效,更接近btw滤波器和for循环_Java_Performance_For Loop_Filter_Resources - Fatal编程技术网

Java 哪种方法更有效,更接近btw滤波器和for循环

Java 哪种方法更有效,更接近btw滤波器和for循环,java,performance,for-loop,filter,resources,Java,Performance,For Loop,Filter,Resources,我在NamAryVar中有一个类对象列表 我需要检查字符串是否等于列表中NAMCL的任何NamVar。 我用两种方法来实现这一点,并得到了预期的结果。 但是 我想知道这两种方法中哪一种更快、更高效、使用更少资源 |*|使用for循环: boolean FndResVab = false; for(NamCls NamObjIdxVar : NamAryVar) { if(NamObjIdxVar.NamVar.equals("SomString")) { FndD

我在NamAryVar中有一个类对象列表
我需要检查字符串是否等于列表中NAMCL的任何NamVar。
我用两种方法来实现这一点,并得到了预期的结果。
但是
我想知道这两种方法中哪一种更快、更高效、使用更少资源

|*|使用for循环:

boolean FndResVab = false;
for(NamCls NamObjIdxVar : NamAryVar)
{
    if(NamObjIdxVar.NamVar.equals("SomString"))
    {
        FndDupVab = true;
        break;
    }
}
|O |使用列表过滤器:

Boolean FndResVab = NamAryVar.stream()
                        .filter(IdxVar -> IdxVar.NamVar.equals("SomString"))
                        .count() == 1;

if(FndResVab)
{
    // TskTdo :=> When Found
}
else
{
    // TskTdo :=> When Not Found
}

Java8流几乎总是比常规迭代执行得最差。这些流被添加到Java中,以将函数式编程结构引入到语言中,从而为程序员提供便利。易用性和可维护性是streams背后的主要动力

看看这篇文章:


还有这个问题:

Java8流几乎总是比常规迭代执行得最差。这些流被添加到Java中,以将函数式编程结构引入到语言中,从而为程序员提供便利。易用性和可维护性是streams背后的主要动力

看看这篇文章:

这个问题: