+可以是字符串或者数字及其他基本类型数据,而concat只能接收字符串。+左右可以为null,concat为会空指针。如果拼接空字符串,concat会稍快,在速度上两者可以忽略不计,如果拼接更多字符串建议用StringBuilder。从字节码来看+号编译后就是使用了StringBuiler来拼接,所以一行+的语句就会创建一个StringBuilder,多条+语句就会创建多个,所以为什么建议用StringBuilder的原因。