当前位置: 代码迷 >> J2EE >> 关于System.currentTimeMillis ()后面+“”的一个有关问题
  详细解决方案

关于System.currentTimeMillis ()后面+“”的一个有关问题

热度:405   发布时间:2016-04-17 23:15:12.0
关于System.currentTimeMillis ()后面+“”的一个问题
最近在学习cookie在研究上次访问时间的时候遇到一个问题:



为什么写成这样就会报错:
Cookie cookie= new Cookie("LastAccessTime", System.currentTimeMillis());

而这样就是正确的:
 Cookie cookie= new Cookie("LastAccessTime", System.currentTimeMillis()+"");


我查看了一下API上面Cookie  的 constructor 是这样的:

Cookie(java.lang.String name, java.lang.String value) 

那是不是意味着+"" 就是把System.currentTimeMillis()的结果原本是long类型的变成了String类型的。这其中的原理是什么啊??
------解决思路----------------------
任何基本类型遇到string类型(包括空string)作+运算都会自动转为string类型,如1+2+""+3+4 结果为"334"
  相关解决方案