我有一个numpy数组列表和一个numpy数组.我想检查单个数组是否是列表的成员.
我想有一种方法,我没有正确搜索...这就是我想出的:
def inList(array, list):
for element in list:
if np.array_equal(element, array):
return True
return False
Run Code Online (Sandbox Code Playgroud)
这个实现是否正确?这有什么功能吗?
通过Play WS API,我得到一个Response对象.因为它包含我调用的JSON
response.asJson()
Run Code Online (Sandbox Code Playgroud)
哪作得很好.现在我想在一个漂亮的版本中返回这个JSON,所以我试着打电话
Json.prettyPrint(response.asJson())
Run Code Online (Sandbox Code Playgroud)
但是这不起作用,因为prettyPrint需要JsValue,而不是JsonNode. 那么问题是如何将JsonNode转换为JsObject?
我最近将我们的系统从 Spring Boot 1.5 升级到 2.1.3 并添加了spring-boot-starter-actuator. 显然,有些东西配置错误,因为有一个NullPointerExceptionin TomcatMetrics::registerMetricsEventually:
java.lang.NullPointerException: null
at io.micrometer.core.instrument.binder.tomcat.TomcatMetrics.lambda$registerMetricsEventually$aa4da135$1(TomcatMetrics.java:260)
at java.management/javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:238)
at java.management/javax.management.MBeanServerDelegate.sendNotification(MBeanServerDelegate.java:211)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.sendNotification(DefaultMBeanServerInterceptor.java:1473)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1867)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:955)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:890)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:320)
at java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at org.apache.tomcat.util.modeler.Registry.registerComponent(Registry.java:639)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.register(AbstractProtocol.java:1059)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:823)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
Run Code Online (Sandbox Code Playgroud)
空指针出现在这里:
return objectName.getDomain().equals(getJmxDomain()) && objectName.getKeyProperty(key).equals(value);
Run Code Online (Sandbox Code Playgroud)
因为objectName.getKeyProperty("j2eeType")返回空值。
这是否表明某些东西明显配置错误?
我有一个文件流,我想根据文件名的结尾过滤:
public Stream<File> getFiles(String ending) throws IOException {
return Files.walk(this.path)
.filter(Files::isRegularFile)
.map(Path::toFile)
.filter(file -> file.getName().endsWith(ending));
}
Run Code Online (Sandbox Code Playgroud)
虽然最后一行中的lambda也不错,但我认为我也可以在那里使用方法引用,如下所示:
.filter(File::getName.endsWith(ending));
Run Code Online (Sandbox Code Playgroud)
或者用括号括起来.然而,这失败了The target type of this expression must be a functional interface
你能解释为什么这不起作用吗?