Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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
Android studio 无法解析方法流()_Android Studio_Java 8 - Fatal编程技术网

Android studio 无法解析方法流()

Android studio 无法解析方法流(),android-studio,java-8,Android Studio,Java 8,我正在使用 java version 1.8._101 Android studio 2.1.3 Gradle version 2.14.1 minSdkVersion 15 targetSdkVersion 23 buildToolsVersion '23.0.3' 尝试使用java8lambda表达式过滤arrayList ArrayList<Object> listObject = ......(); listObject.stream(); ArrayList

我正在使用

java version 1.8._101

Android studio 2.1.3

Gradle version 2.14.1

minSdkVersion 15

targetSdkVersion 23

buildToolsVersion '23.0.3'
尝试使用
java8lambda
表达式过滤
arrayList

ArrayList<Object> listObject = ......();
listObject.stream();
ArrayList listObject=…();
stream();
但是它给了我
无法解析方法流()


我已经提到2018年更新:不再支持jack。当前的Java8支持howto在这里可用:-特别有用的是显示Java8的哪些部分在哪些API级别可用的表


下面的信息已弃用 看

build.gradle的关键部分:

android {
  compileSdkVersion 24
  buildToolsVersion "24.0.1"
  ...
  defaultConfig {
    minSdkVersion 24
    targetSdkVersion 24
    ...
    jackOptions {
      enabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

使用流API时,出现错误“调用需要API级别24”。您可以将其隐藏在
@TargetApi(24)
后面,但随后将需要一个用于较低API级别的替代实现。要无限制地使用,Minsdk版本必须为24

更新build.gradle后,确保在外部库下的项目视图中显示“Android API 24平台”。如果没有,请执行工具->Android->将项目与Gradle文件同步

然后能够通过以下测试

@Test
public void testStream() throws Exception {
    assertThat(Arrays.asList(1, 3, 4).stream().reduce(0, (i, j) -> i + j), is(8));
}

2018年更新:不再支持jack。当前的Java8支持howto在这里可用:-特别有用的是显示Java8的哪些部分在哪些API级别可用的表


下面的信息已弃用 看

build.gradle的关键部分:

android {
  compileSdkVersion 24
  buildToolsVersion "24.0.1"
  ...
  defaultConfig {
    minSdkVersion 24
    targetSdkVersion 24
    ...
    jackOptions {
      enabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

使用流API时,出现错误“调用需要API级别24”。您可以将其隐藏在
@TargetApi(24)
后面,但随后将需要一个用于较低API级别的替代实现。要无限制地使用,Minsdk版本必须为24

更新build.gradle后,确保在外部库下的项目视图中显示“Android API 24平台”。如果没有,请执行工具->Android->将项目与Gradle文件同步

然后能够通过以下测试

@Test
public void testStream() throws Exception {
    assertThat(Arrays.asList(1, 3, 4).stream().reduce(0, (i, j) -> i + j), is(8));
}

可能重复的不使用android N my buildToolsVersion'23.0.3'可能重复的不使用android N my buildToolsVersion'23.0.3'不,我使用新项目和列表进行了测试。该项目中有stream()。注意,不再支持jack。当前的Java 8支持howto在此处可用:-特别有用的是显示Java 8的哪些部分在哪些API级别可用的表格。没有,我使用新项目和列表进行了测试。该项目中有stream()。注意:jack不再受支持。当前的Java8支持howto在这里可用:-特别有用的是显示Java8的哪些部分在哪些API级别可用的表。