Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.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 - Fatal编程技术网

Java 抓住麻烦点的更好方法

Java 抓住麻烦点的更好方法,java,Java,用户提交程序使用的CSV文件。在整个程序中使用的值来自CSV,如果丢失值,自然是一个问题。下面是我的解决方案 Ip在顶部 private List<String> currentFieldName = new ArrayList<String>(); 以及跟踪正在观察的电流场的方法: private void setCurrentFieldName(String fieldName) { currentFieldName.clear(); currentFieldN

用户提交程序使用的CSV文件。在整个程序中使用的值来自CSV,如果丢失值,自然是一个问题。下面是我的解决方案

Ip在顶部

private List<String> currentFieldName = new ArrayList<String>();
以及跟踪正在观察的电流场的方法:

private void setCurrentFieldName(String fieldName) {
 currentFieldName.clear();
 currentFieldName.add(fieldName);
}
这里的想法是,如果用户未能提交值,我最终将得到null,在抛出异常之前,我将知道哪些值未分配

因此,尽管如此,具体问题如下:

  • 我在下面展示的是一个可接受的解决方案吗
  • 你能推荐一些更优雅的吗

  • 我想到的第一件事是,使用
    ArrayList
    来表示单个字段的名称是多余的

    为什么不定义一个
    私有字符串currentFieldName
    并在
    中尝试{}
    do
    currentFieldName=“Trim Space”

    而且

    可以表达为

    p.setTrimSpace(currentLineArray[index].equals("yes"));
    
    如果您的代码经过许多列,您肯定可以使其更加优雅。如果不是,你的时间最好花在项目的其他部分上


    您的解决方案是否可接受取决于需求,测试套件将是提供是或否的理想选择。

    我想到的第一件事是,使用
    ArrayList
    表示单个字段的名称是多余的

    为什么不定义一个
    私有字符串currentFieldName
    并在
    中尝试{}
    do
    currentFieldName=“Trim Space”

    而且

    可以表达为

    p.setTrimSpace(currentLineArray[index].equals("yes"));
    
    如果您的代码经过许多列,您肯定可以使其更加优雅。如果不是,你的时间最好花在项目的其他部分上


    您的解决方案是否可接受取决于需求,测试套件是提供是或否的理想选择。

    +1建议测试套件/单元测试。依我看,如果没有像样的单元测试,这是不可接受的解决方案。这太棒了!p、 setTrimSpace(currentLineArray[index].equals(“yes”);setCurrentName方法是否可以?private void setCurrentFieldName(String fieldName){currentFieldName=null;currentFieldName=fieldName;}@mac,不需要专门指定设置字符串值的方法。此外,在赋值之前将其设置为null是不必要的。+1用于建议测试套件/单元测试。依我看,如果没有像样的单元测试,这是不可接受的解决方案。这太棒了!p、 setTrimSpace(currentLineArray[index].equals(“yes”);setCurrentName方法是否可以?private void setCurrentFieldName(String fieldName){currentFieldName=null;currentFieldName=fieldName;}@mac,不需要专门指定设置字符串值的方法。此外,在赋值之前将其设置为null也是不必要的。
    p.setTrimSpace(currentLineArray[index].equals("yes"));