昨天进行面试的时候,碰到面试官问到这个问题。
问:StringBuilder与StringBuffer的区别?
答:StringBuilder线程安全、速度快;StringBuffer线程不安全、速度慢。
问:既然StringBuilder速度快,那为什么不用StringBuilder呢?
答:在进行多线程操作数据时候,使用StringBuilder可能会出现问题,使用StringBuffer不会。
面试官不满意我的回答,没有下文了。
回来后,我问了一哥大牛丁威,他跟我以后这样回答:
问:StringBuilder与StringBuffer的区别?
答:StringBuilder是线程安全的,StringBuffer是线程不安全的
问:既然StringBuilder线程不安全,那为什么要使用StringBuilder呢?
答:在不需要线程安全(没有操作共享变量)的情况下,可以使用StringBuilder。例如在操作方法中的局部变量时候。
大牛的意思是:回答时候不需要回答速度快慢问题(除非面试官非要问你),这样可以避免面试官挑刺。
希望这篇文章对大家有帮助!!!