该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2012-04-12
spyker 写道 jinnianshilongnian 写道 jyjava 写道 你开发中用的时候会去考虑这个东西吗,另外,你设计一个框架的时候会考虑这个吗,
在开发期间我并不考虑这种问题,此文的意思是:拿【new String("xyz")】面试没有意义,还不如问类似于下面的语句如何改造: String str=""; for(int i=0;i<100000;i++) { str = str + i; } StringBuilder sb = new StrinBuilder(""); for(int i=0;i<100000;i++) { sb.append(i+""); } 随手写的 考的重点 1、 sb.append(i+""); //直接 sb.append(i)即可,不需要+”“ 2、默认容量(如果字串的长度能估算出来),指定默认容量, 如new StringBuilder(100),即不需要扩容(就没有复制数组) |
|
返回顶楼 | |
发表时间:2012-04-12
最后修改:2012-04-12
你考scjp么 还是其他?这几天一直咬着string
用ide可能就不会写 i+"" 这个性能差多少 ?感觉不差多少吧 jvm难道没有自己的优化 |
|
返回顶楼 | |
发表时间:2012-04-12
spyker 写道 你考scjp么 还是其他?这几天一直咬着string
用ide可能就不会写 i+"" 这个性能差多少 ?感觉不差多少吧 jvm难道没有自己的优化 最近总有人问 new String("abc")创建几个对象,所以做个汇总贴,放着 有问的 就看帖子 性能你可以自己试试,我就不发了。(从时间和创建的对象数量对比) |
|
返回顶楼 | |
发表时间:2012-04-15
jinnianshilongnian 写道 spyker 写道 jinnianshilongnian 写道 jyjava 写道 你开发中用的时候会去考虑这个东西吗,另外,你设计一个框架的时候会考虑这个吗,
在开发期间我并不考虑这种问题,此文的意思是:拿【new String("xyz")】面试没有意义,还不如问类似于下面的语句如何改造: String str=""; for(int i=0;i<100000;i++) { str = str + i; } StringBuilder sb = new StrinBuilder(""); for(int i=0;i<100000;i++) { sb.append(i+""); } 随手写的 考的重点 1、 sb.append(i+""); //直接 sb.append(i)即可,不需要+”“ 2、默认容量(如果字串的长度能估算出来),指定默认容量, 如new StringBuilder(100),即不需要扩容(就没有复制数组) +1 |
|
返回顶楼 | |