concat() “+“ 和 append() 的区别

由下面的例子可看出,"+" 和 append() 方法都可以对任意类型数据进行拼接,而 concat() 方法则需要将其他类型的数据则要转化为字符串后才能拼接

package 练习题;
import java.util.ArrayList;
import java.util.List;

public class 练习题29 {

	public static void main(String[] args) {
		List<Object> list = new ArrayList<Object>();
		list.add(100);
		list.add('日');
		list.add("冲刺,决胜高考!");
		
		StringBuffer sb = new StringBuffer();
		for(char i = 0; i < list.size(); i++){
			sb.append(list.get(i));
		}
		System.out.println(sb);
		
		String s1 = "";
		for(char i = 0; i < list.size(); i++){
			s1 = s1 + list.get(i);
		}
		System.out.println(s1);
		
		String s2 = "";
		for(char i = 0; i < list.size(); i++){
			s2 = s2.concat( list.get(i).toString());
		}
		System.out.println(s2);
		
		
		String str1 = "";
		System.out.println(str1.concat(null)); //运行后报空指针异常NullPointerException
		String str2 = null;
		System.out.println(str2.concat("asdf"));//运行后报空指针异常NullPointerException
	}

}

输出结果:
100日冲刺,决胜高考!
100日冲刺,决胜高考!
100日冲刺,决胜高考!
Exception in thread "main" java.lang.NullPointerException

String 类的 concat() 方法(只能用于拼接字符串,不能拼接其他类型的数据)将指定的字符串拼接到该字符串的末尾。并且字符串本身和拼接的字符串都不能为null,否则运行程序后会报空指针异常NullPointerException (编译时没有报错)

“+” 可以对字符、数字、字符串等数据类型的拼接

StringBuffer 类的 append() 可以对字符,数字,字符串等数据类型的拼接,结果返回一个 StringBuffer 类型的对象

  • 11
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

家师曹先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值