小编Tiy*_*iya的帖子

java 7 for 循环到 java 8 IntStream forEach

对于以下 Java 7 代码,

public static boolean java8Test() {
    boolean flag = true;
    for(int i = 67 ; i < 79 ; i++) {
        if(!testBoolean(i)) {
            flag = false;
        }
    }
    return flag;
}
Run Code Online (Sandbox Code Playgroud)

我想编写一个 Java8 代码来使用 java 8 功能对从 67 到 78(包括两者)的一系列数字执行 testBoolean 方法。

此外,java8Test()如果testBoolean返回 false,则应返回 false,但是对于给定数字范围内的所有数字,处理不应停止并继续。

我已经尝试过下面的代码,但是这段代码在返回我不想要的 false 后停止执行 testBoolean 方法。我希望继续执行并记住 java8Test 方法可以在所有数字范围执行后返回的错误标志

public static boolean java8Test() {
    return IntStream.range(67, 78+1).anyMatch(index -> !testBoolean(index));
}

private static boolean testBoolean(int index) {
    System.out.println(index + "\n");
    switch(index) …
Run Code Online (Sandbox Code Playgroud)

java java-stream

1
推荐指数
1
解决办法
261
查看次数

JMS - 如何将消息发送回客户端?

这是我的客户端代码:

\n\n

公共类 ABCServlet 扩展 HttpServlet {

\n\n
protected void doGet(HttpServletRequest request,\n                 HttpServletResponse response){\n//do blah blah\nString msg = null;\n\njava.io.OutputStream os = response.getOutputStream();\njava.io.ObjectOutputStream oos = new java.io.ObjectOutputStream(os);\noos.writeObject(msg);\nmsg = null;\noos.flush();\noos.close();\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

我不知道如何使用上面的代码我的监听器被启动 -

\n\n
public class ABCListener implements MessageListener {\n\n@Override\npublic void onMessage(Message arg0) {\n AbstractJDBCFacade fa\xc3\xa7ade = null;\n try{\n    fa\xc3\xa7ade = something;\n    throw new UserException();\n }catch(UserException ex){\n    log.error("ABC Exception " + ex);\n }\n
Run Code Online (Sandbox Code Playgroud)\n\n

配置 :

\n\n
<bean id="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">....\n\n<bean id="jmsQueue" class="org.springframework.jndi.JndiObjectFactoryBean">\n\n<bean id="listenerContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer102">\n
Run Code Online (Sandbox Code Playgroud)\n\n

我有 3 个问题:\n1. 如果不显式地将其放入队列,如何调用侦听器?\n2. 当 onMessage 方法抛出 …

jms objectoutputstream

0
推荐指数
1
解决办法
4256
查看次数

使用流删除一个列表中的元素(如果存在于另一个列表中)

我在这里没有找到任何关于这个问题的线索。我正在尝试使用 java 流删除一个列表 (cars1) 中存在于另一个列表 (cars2) 中的元素(在我的例子中为汽车)。我尝试使用removeIf,但后来感觉它更适合字符串列表等。

    Car c1 = new Car();
    c1.id = 1;
    c1.name = "C1";

    Car c2 = new Car();
    c2.id = 2;
    c2.name = "C2";

    List<Car> cars1 = new ArrayList<Car>();
    cars1.add(c1);
    cars1.add(c2);

    List<Car> cars2 = new ArrayList<Car>();
    cars2.add(c2);

    // TODO : Remove all the cars from cars1 list that are in cars2 list using java streams
Run Code Online (Sandbox Code Playgroud)

java remove-if java-stream

-1
推荐指数
1
解决办法
6251
查看次数

标签 统计

java ×2

java-stream ×2

jms ×1

objectoutputstream ×1

remove-if ×1