简单地说下Java中的三目运算

三目运算在Java中算是比较常用的,对于一些分支判断,这个会非常适用,三目运算:
表达式1?表达式2:表达式3;

表达式1为true,取表达式2
表达式1为false,取表达式3

(a

为什么要说下三目运算呢?今天遇到了一个很有意思的问题,一个新同事需要组装数据传送,每一行数据的每一个字段之间采用|@|作为分隔符,结果后面生成的文件,分隔符个数不对,由于每一行大概有100多个分隔符,他就懒得一一对比,我去看了一眼代码,便大概知道问题在哪了,我们先看代码:

public static void main(String[] args) {
		StringBuilder head = new StringBuilder();
		String ss = null;
		head.append(ss == null ? "" : ss.toString() + "|@|");
		System.out.println(ss == null ? "" : ss.toString() + "|@|");
	}

看了看代码,大概就知道问题出在哪了,表达式3究竟是ss.toString() + "|@|"还是ss.toString()?所以为什么会少分隔符,大概就知道原因了。

你可能感兴趣的:(基础)