Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/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
Java 我想用这个做一个简单的代码_Java_Eclipse_Netbeans - Fatal编程技术网

Java 我想用这个做一个简单的代码

Java 我想用这个做一个简单的代码,java,eclipse,netbeans,Java,Eclipse,Netbeans,所以,我的程序中有for JTextfields,但是如果我检查它是否为空,这将使我的代码变长并且无效。有没有比这更简单的代码 if (t_ipA.getText() == null || t_ipA.getText().trim().isEmpty()) { // your code here } 注:我有:t_ipA。。蒂普·伊普德,蒂普·马斯卡。。杜马斯克德 有八个jtext字段 -------编辑--------- 好的,现在我

所以,我的程序中有for JTextfields,但是如果我检查它是否为空,这将使我的代码变长并且无效。有没有比这更简单的代码

if (t_ipA.getText() == null || t_ipA.getText().trim().isEmpty()) {
                 // your code here
            }
注:我有:t_ipA。。蒂普·伊普德,蒂普·马斯卡。。杜马斯克德 有八个jtext字段

-------编辑--------- 好的,现在我已经解决了我自己的问题

这是我一直使用的代码: 方法如下:

    private boolean isEmpty(JTextField f) {
    if (f==null || f.getText().trim().isEmpty()) {
        f.setText("0");
    }
    return f.getText().trim().isEmpty();

}
这是在actionlistener中:

isEmpty(t_ipA);
isEmpty(t_ipB);
isEmpty(t_ipC);
isEmpty(t_ipD);

isEmpty(t_maskA);
isEmpty(t_maskB);
isEmpty(t_maskC);
isEmpty(t_maskD);
但是,我仍然在寻找使用数组列表来简化代码


首先感谢QBrute、JBNizet和Mureinik,您可以定义一个方法来封装检查:

private boolean isEmpty(JTextField f) {
    return f.getText() == null || f.getText().trim().isEmpty();
}
然后,您可以将所有字段放在一个列表或数组中,并使用Java8的流API将条件应用于所有字段。例如:

List<JTextFeild> fields = Arrays.asList(t_ipA, t_ipB /* etc... */);
if (fields.stream().allMatch(this::isEmpty)) {
    // your code here...
}
List-fields=Arrays.asList(t_-ipA,t_-ipB/*等.*);
if(fields.stream().allMatch(this::isEmpty)){
//你的代码在这里。。。
}

编写一个执行检查的方法,并用每个文本字段调用此方法。getText()永远不会返回null。嗯,您能给我演示一下示例吗?我是编程新手。谢谢
布尔值为空(JTextField t){return t.getText().trim().isEmpty();}
。如果要使用Swing,应该能够创建方法。这是在使用像Swing这样的复杂API之前需要掌握的基本知识。第二个代码给了我错误:“类型列表不是泛型的,它不能用参数参数化”。我添加了java.awt.List;java.util.Arrayst右列表类位于java.util中。不在java.awt.ok JB Nizet中,但是现在allMatch…方法不适用于(this::isEmpty),并且新的操作侦听器是doesnfine(JTextfield),适用于这里