java string.format性能如何 -凯发k8国际

0 3

java string.format性能如何0

java string.format性能如何?

问题补充:string format = "%s %s";
string str1 = "str1";
string str2 = "str2";
system.out.println(string.format(format,str1,str2));

system.out.println(str1 " " str2 );
string.format虽然书写方便,但是不知道其组合字符串是不是像str1 str2 拼接字符串的方式?相对于拼接字符串,string.format 性能更好还是更差
 
2012年9月01日 13:39

4个答案

0 0

我看上面回复废话都很多,就一句话,性能很差。
如果有空可以查看下源码,如果想性能高还是按照自己的特性去实现吧

2014年7月22日 11:05
0 0

1、你说的性能 是和 谁 进行比较?

2、在大部分时间我们注重的是简单和易用性,性能可以在后期优化;

3、string.format内部:

public static string format(string format, object ... args) {
	return new formatter().format(format, args).tostring();
}


内部new了一个java.util.formatter来委托处理,显然静态方法的说法站不住脚。

formatter借鉴了c语言的printf,提供格式化字符串的解释程序。 以下来自jdk文档
引用
printf 风格的格式字符串的解释程序。此类提供了对布局对齐和排列的支持,以及对数值、字符串和日期/时间数据的常规格式和特定于语言环境的输出的支持。支持诸如 byte、bigdecimal 和 calendar 等常见 java 类型。任意用户类型的受限格式化定制都是通过 formattable 接口提供的。


比如小数点后保留两位
   formatter.format("¥%.2f", 12.333);
格式化年月日
   formatter.format("%1$ty-%1$tm-%1$td %1$th:%1$tm:%1$ts", new date())
等等。。。

重点在于提供格式化解释程序。
2012年9月01日 18:27
0 0

静态方法在程序开始时生成内存,实例方法也就是new object().方法在程序运行中生成内存,
所以静态方法可以直接调用,实例方法要先成生实例,通过实例调用方法,静态速度很快,但是多了会占内存。
任何语言都是对内存和磁盘的操作,至于是否面向对象,只是软件层的问题,底层都是一样的,只是实现方法不同。
静态内存是连续的,因为是在程序开始时就生成了,而实例申请的是离散的空间,所以当然没有静态方法快,
而且静态内存是有限制的,太多了程序会启动不了。

2012年9月01日 13:44
0 0

静态方法string.format();效率应该比的对象.方法高

2012年9月01日 13:42

相关推荐

    throw new illegalargumentexception(string.format( "worker id can't be greater than %d or less than 0", this.maxworkerid)); } this.workerid = workerid; } public synchronized long nextid() { long ...

    sequence 序列,对应java 里的list 、数组等非键值对的集合 hash 键值对的集合 namespace 对一个ftl 文件的引用, 利用这个名字可以访问到该ftl 文件的资源 b 指令 if, else, elseif 语法 java代码 ...

    字母格式器 aleph formatter是用于字符串格式化的轻量级库,它同时支持命名参数和位置参数:它对对象自省的...在简单情况下,aleph formatter的性能优于string.format 。 一个jmh基准显示以下结果(越小越好): cpu:

    性能也比hibernate好。而且也比较轻量级,因为当时在项目中,没来的及做很很多笔记。后来项目结束了,我也没写总结文档。已经过去好久了。但最近突然又对这个orm 工具感兴趣。因为接下来自己的项目中很有可能采用这...

    b .ibatis自带的queryforlist(string statementname,int start,int size)分页接口有性能隐患,不允许使用。 c .定义明确的sql查询语句,通过传入参数start和size来实现分页逻辑。 d .可使用存储过程写分页逻辑...

    (7) to_date(string,'format') 28 (8)系统函数 29 14.oracle创建数据库实例 30 15.java操作oracle 31 16.oracle事务处理 34 17.oracle数据完整性 36 18.oracle 序列(sequence) 39 19.oracle 索引 40 20.oracle管理...

     throw new exception(string.format("failed to fast create instance for type '{0}' from assemebly '{1}'",  objtype.fullname, objtype.assemblyqualifiedname), exc);  }  }更多教程请参考...

    formatstring 计算结果的显示格式。 visible 是否可见 datatype 数据类型,默认为 numeric formatter 采用类来对该 measure 的值进行格式,具体参考 level 的 formatter 属性。 caption 标题,用来显示时...

    javascript的regexp对象和string对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法. 在javascript中,正则表达式是由一个regexp对象表示的.当然,可以使用一个regexp()构造函数来创建regexp...

    # hero needs `goimports` to format the generated codes. go get golang.org/x/tools/cmd/goimports 用法 hero [options] -source string the html template file or dir (default " ./ " ) -dest string ...

    说明: 与 nls_time_tz_format 相似, 其中的一对值指定 timestamp 数据类型的默认值, 该类型除存储 year, month 和 day 日期值, hour, minute 和 second 时间值, 还存储 timezone_hour 和 timezone_minute。...

    richtextbox2.text = string.format("{0:0000}", i) "\n"; } } 根据闰年的规则,很容易整理出规则,四年一闰; ([0-9]{2}(0[48]|[2468][048]|[13579][26]) 百年不闰,四百年再闰。 (0[48]|[2468][048]|[13579]...

    string命令 append命令 format命令 scan命令 binary命令 相关章节 第5章 tcl列表 tcl列表 构建列表 获取列表元素 修改列表 搜索列表 对列表进行排序 split命令 join命令 相关章节 第6章 控制结构...

global site tag (gtag.js) - google analytics
网站地图