猿问

如何在@AfterMethod 中将@Test 标记为失败

我的控制器:


package com.market;


import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;





@Controller 

public class Controllerx {


    @Autowired

    private View frame;



/*

    private void init() {

        this.frame.addWindowListener(this);

        registerAction(frame.getbEnter(), new AbstractAction() {

            private List<Funcionarios> list; 


            @Override

            public void action() {

                if (!frame.getjLogin().getText().trim().isEmpty() || !frame.getjPassword().getText().trim().isEmpty()) {


                }else {

                    JOptionPane.showMessageDialog(frame, null, "Campo vázio", JOptionPane.INFORMATION_MESSAGE);

                }

            }


            @Override

            public void posAction() {

                cleanUp();

            }

        });

    }

    */

    public void show() {

        frame.setVisible(true);

    }



}

我的主要:


@SpringBootApplication

@EnableAutoConfiguration

public class Market1Application {


    public static void main(String[] args) {

        ConfigurableApplicationContext context = new SpringApplicationBuilder(Market1Application.class).headless(false).run(args);

        Controllerx appLogin = context.getBean(Controllerx.class);

    }


}

我的看法:


package com.market;


import java.awt.FlowLayout;

import java.awt.GridLayout;


import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JTextField;


import org.springframework.stereotype.Component;




ABOUTYOU
浏览 221回答 3
3回答

慕雪6442864

一旦条件为真,流就会被消耗而且我不能重用它中间操作(例如map)返回一个新流,因此您需要在中间操作()之后重新分配流map。IEDoubleStream stream = object.getvalueStream(a,b);if (condition) {&nbsp; &nbsp; stream = stream.map(v -> v * 2);}stream.forEach(value -> {&nbsp; &nbsp; // do something}注意终端操作(例如foreach)不返回流。所以如果你想要很多终端操作,你应该收集流以便可以重复使用。另请注意,如果您希望链接( ) 调用,还有一个foreachcalled的中间版本。peekforeachpeek

守着一只汪

Streams在 Java 中不能被重用。您应该将collect结果和流式传输两次List<Double> doubles = object.getvalueStream(a,b).boxed().collect(toList());if(condition) {&nbsp; &nbsp; doubles = doubles.stream().map(v -> v * 2).boxed().collect(toList);}// and further processing heredoubles.stream().forEach(v ->&nbsp; &nbsp; ...);

人到中年有点甜

如果保留流而不收集流对您很重要,则可以使用 map() 。这种方法的唯一缺点是每次都必须检查条件DoubleStream stream = object.getvalueStream(a,b).map(v-> condition ? v*2 : v).forEach(...);或者只是将正确的 Stream 分配给变量DoubleStream stream = condition ? object.getvalueStream(a,b).map(v->v*2) : object.getvalueStream(a,b).map(v->v*2).forEach(...);分享
随时随地看视频慕课网APP

相关分类

Java
我要回答