① java中int跟float的运算结果是float类型还是double类型
向参与运算的操作数的类型中的最高精度转型,所以答案是float类型。如果有小数参与运算,则为double类型,因为java默认小数直接量是double类型的。如:
int n=100;
float f=1.1f;
则n+f的结果是float类型的,而6.0+n+f的结果是double类型的。
② Java 输入String值10。 将这个String型变数转换为int型,再将转换后的int型变数转换为float型
String ss = "123"; int a = Integer.parseInt(ss); //方法一(将字符串参数作为有符号的十进制整数进行解析。) int b = Integer.valueOf(ss); //方法二(返回保存指定的 String 的值的 Integer 对象。)
③ Java中几种常用数据类型之间转换的方法
下面给你例举10种Java中几种常用的数据类型之间转换方法:
1. short-->int 转换
exp: short shortvar=0;
int intvar=0;
shortvar= (short) intvar
2. int-->short 转换
exp: short shortvar=0;
int intvar=0;
intvar=shortvar;
3. int->String 转换
exp: int intvar=1;
String stringvar;
Stringvar=string.valueOf (intvar);
4. float->String 转换
exp: float floatvar=9.99f;
String stringvar;
Stringvar=String.valueOf (floatvar);
5. double->String 转换
exp double doublevar=99999999.99;
String stringvar;
Stringvar=String.valueOf (doublevar);
6. char->String 转换
exp char charvar=’a’;
String stringvar;
Stringvar=String.valueOf (charvar);
7 String->int、float、long、double 转换
Exp String intstring=”10”;
String floatstring=”10.1f”;
String longstring=”99999999”;
String doubleString=”99999999.9”;
Int I=Integer.parseInt (intstring);
Float f= Integer.parseInt (floatstring);
Long lo=long. parseInt (longstring);
Double d=double. parseInt (doublestring);
8 String->byte、short 转换
Exp String s=”0”;
Byte b=Integer.intValue(s);
Short sh=Integer.intValue(s);
9 String->char 转换
Exp String s=”abc”;
Char a=s.charAt(0);
返回字符a
10 String-->boolean 转换
String s=”true”;
Boolean flag=Boolean.valueOf (“s”);
④ java int转float为什么不报错
byte<short<int<long
char<int
int<float<double
低精度往高精度转换是不会报错的
就好比小盒子往大盒子里放东西,即使填不满,就空着
但是大盒子是无法放进小盒子里的
⑤ int 转 float 为什么有时会丢失精度
int是整型,用来表示整数,其值是精确值。
float是浮点型,用来表示实数,其值是近似值。
所以当int转换为float时,是由准确值变成了近似值,所以会丢失精度。
比如int 的1000,转换为浮点型时,可能会被存成1000.00000000001,用来计算或者输出时看不出区别,实际上是已经有变化了。
在32位和64位的编译器中,int和float都是占四字节。
int可以表示范围为-2147483648~2147483647。
float可以表示-3.40E+38 ~ +3.40E+38。
从这个角度上看,float可以表示的范围比int的大太多了,对于比较大的数值,自然就会差距越大。
比如下面的代码
intmain()
{
inta=2147483000;
floatb=a;
printf("%f ",b);
return0;
}
在gcc下输出
2147483008.000000
与原本值已经相差了8。
⑥ Java中int转float可能会损失精度,但是int转double为什么也会损失精度
高向低转换,因为涉及到位数变少,所以可能会丢失数字,产生误差,所以一般不让转化,确实需要转化的时候就如你所说格式,进行强制类型转换
反过来,低向高转化,则完全不用考虑数据产生误差问题,可以直接使用的。比如直接将a赋给一个double变量,double
c=a。
往面向对象来说,double就相当于int的抽象
⑦ Java中将整型转换成浮点型或者其他类似的基本型转换语句怎么写
一般情况,整型转换为浮点型,或者浮点型转换成整型可以直接进行强制类型转换啊。比如: int a = 9; float b = (float)a; //则输出 a 的结果是 a = 9, 输出b的结果是 b = 9.0 double c = 1.1234; int d = (int)c; //则输出 c 的结果是 c = 1.1234, 输出d的结果是 d = 1 特殊情况:比如说从一个 textBox里面读出的数据转换成浮点型或者整型的方法比如: String str = "1.2345"; double dou = Double.parseDouble(str); 或者: String str = "22222222"; int ddd = Integer.paseInteger(str); 以上两种方法是常用的转换类型的方法了。
⑧ Java语言的数据类型,int和float能自动转换吗都是4字节,搁一块儿转换成啥类型
int和float能自动转换的,运算会先自动转换为两个float,然后进行运算(如果int的有效数字较多,可能会丢失部分数据),最后的结果只能保证7位有效数据。
⑨ 定义的时候是int,要怎么转换成float
1、创建java类,TestFloat