就以String,Integer,int来说吧
String str = "123";Integer.parseInt(str);
new Integer(str);
Integer.valueOf(str);
intValue();
还有强制类型转换(Integer)...
好多啊。弄的头大了
我弄不清这些的使用和区别在哪里
麻烦各位给我总结一下,顺便给个例子。。谢谢
String str = "123";Integer.parseInt(str);
new Integer(str);
Integer.valueOf(str);
intValue();
还有强制类型转换(Integer)...
好多啊。弄的头大了
我弄不清这些的使用和区别在哪里
麻烦各位给我总结一下,顺便给个例子。。谢谢
解决方案 »
- 怎样用Swing画如下图形
- ResultSet的getString方法和Oracle数据库编码问题
- 关于用JAVA画散点图
- !打印杨辉三角形!
- ireport报表请高手解答,急、~~~~~~~~~~~~~~~~在线等
- 关于常量(final)的底层实现,我都晕了,我~
- 如何把输出到System.out的文字输出到一个String中? 快速给分
- 高分求高效方法,立即给分!在线等。。
- 关于float,double类型的数据四舍五入的讨论!
- 在LINUX下怎样用JDBC连接另外一太机器上的SQLSERVER2000?
- 求thinking in java4的中文版
- 求解一个java语法.关于双花括号的.
其它的一样去查看APi呀,比如说new Integer(str);看看它是干什么的.
一个是构造方法,一个是静态方法!
new Integer(str); 这个得到的是Integer的对象
Integer.valueOf(str); 这个是把字符串转换成一个Integer 对象和构造方法作用类似
intValue(); 这个是获取Integer对象的基础数据int值
还有强制类型转换(Integer)强制类型转换是将集合或者数组中以Object形式保存的Integer对象复原
byte x = 3;
int y = x + x; //x被自动转换为int类型
2.强制转换。在运算中如果是长类型转换为短类型时,须在程序中显式的指定,进行强制类型转换。通常系统会截断高位数据,因此进行强制类型转换时有可能会出现信息丢失,例如:
int i = 3;
byte b = (byte)i; //进行强制类型转换
double x = 3.14159;
int y = (int)x; //进行强制转换,丢失了小数部分,y = 3
具体情况参考API,那上边说的比较清楚。
Integer.parseInt(str); 把一个现有的String类型变量转换成int
new Integer(str); 用一个现有的String对象生成一个Integer对象。
intValue(); 返回一个现有的Integer对象的int类型的字面值
一个一个测,看看那一个能给出自己想要的结果,
new Integer(str); 你从String得到一个Integer
Integer.valueOf(str); 等同于 new Integer(parseInt(str,10)); 得到一个Integer
intValue(); 得到一个int
1我们用的最多的是简单数据类型之间的转换,
Byte,shot,char—int—long—float—double
其中byte,shot,char为同级
这里就说明了这几个类型之间的等级.
低至高是最简单的,我们称它为自动转换.看例子:
byte b=1;
int i=b; 高至低,是一种强制的转换,这种转换很有可能导至溢出.例:
long l=100;
int i=l;是不可行的,必须int i=(int)l; 同级转换也是一种强制转换例:
short s=1;
char c=(char)s; 所谓包装类,就是可以直接将简单类型的变量表示为一个类,在执行变量类型的相互转换时,我们会大量使用这些包装类。Java共有六个包装类,分别是Boolean、Character、Integer、Long、Float和Double,从字面上我们就可以看出它们分别对应于 boolean、char、int、long、float和double。而String和Date本身就是类。所以也就不存在什么包装类的概念了。
下面是两个简单的例子:
double d3=100.00; Double D3=new Double(d3); float f=D3.intValue();//高至低的
float f1=111100.00f; Float F1=new Float(f1); double d6=F1.floatValue(); //低至高 其实有很多类型都可转为字符串的,就是那个toString()的方法
int i3=100;
String str=Integer.toString(i3);
System.out.println(i3);
System.out.println(str+3);
这两个输出就可以看到转换的结果了.
另一种是字符型转为整型的,不是输出ASCII的,而是输出'1'=1;
char c='1';
int i2=Character.getNumericValue(c);