public class testLong {
public static void main(String[] args) {
String str = "05020221";
long l1 =Long.valueOf(str);
System.out.println(l1);
long l2 = 03020221l;
System.out.println(l2);
}}
l1 输出结果:05020221
l2 输出结果: 794769疑问:l1输出的结果第一个0跑哪去了
l2结果为什么是794769
public static void main(String[] args) {
String str = "05020221";
long l1 =Long.valueOf(str);
System.out.println(l1);
long l2 = 03020221l;
System.out.println(l2);
}}
l1 输出结果:05020221
l2 输出结果: 794769疑问:l1输出的结果第一个0跑哪去了
l2结果为什么是794769
解决方案 »
- 怎样判断字符串的编码是UTF8还是UTF16?
- show() 已过时怎么办
- 关于自定义JTabbedPane的自定义TabComponet的问题
- 用JDBC 连接数据库com.microsoft.jdbc.sqlserver.??问号的地方是数据库名还是表名!!!还用和JdbcOdbc一样在控制面板中进行连接吗???
- 求新的天气预报程序
- 这种方法要jdk什么版本才支持
- 多线程错误,运行一个没问题,在开一个就有问题了^^^^
- 怎样存储jtree所有展开路经?
- 在用内隐类来实现某个监听器时,是否有必要把内隐类声明为private
- java中的clipboard是不是只能操作文本数据呀,其他数据格式如何操作?
- 大家帮忙看下这道题怎么做?
- 一个关于文件方面的程序 有些地方不懂
long l2 = 03020221l; //数字前面有0,java默认为八进制,转换为10进制就是794769
11没有0是因为之前你定义的是一个字符窜String str = "05020221";接下来通过valueOf方法转换了
在方法ValueOf会去除开头的0至于第二个 开头是 0是八进制的表示方法!