你能帮我编写高效的 Java 代码吗?
逻辑是: 我必须读取文件中的第一个有效记录并生成文件名。无效/有效记录由该行的前 2 个字符标识。无效记录的前 2 个字符填充在名为ignoreTrans 的 ArrayList 中(作为参数传递)。
有两种情况:- 场景1:文件中的所有记录都有效,这种情况下ignoreTrans将为空 场景 2:文件包含无效记录,其中从传递的参数填充ignoreTrans。
我想编写一个三元运算符,如下所示:
FileName = ignoreTrans.isEmpty() ? getFileName(pos) : (if (!ignoreTrans.contains(line.substring(0,2))) getFieldName(pos));
这个说法是错误的。您能否建议如何将三元与 if 一起使用。
谢谢,
最佳答案
尝试
FileName = ignoreTrans.isEmpty() ? getFileName(pos) : !ignoreTrans.contains(line.substring(0,2))) ? getFieldName(pos) : "";
就像嵌套 if
结构一样,您也可以嵌套三元运算符。
关于Java:单行三元运算符 if stmt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47293806/