Javaの型変換
恥ずかしながら、今更Javaを一から勉強中。
今日は型変換について。
double型にint型の計算結果を代入(1)
class Test {
public static void main(String[] args){
double c;
int a=2,b=1;
c=b/a;
System.out.printf("c=%f\n",c);
}
}
public static void main(String[] args){
double c;
int a=2,b=1;
c=b/a;
System.out.printf("c=%f\n",c);
}
}
結果
c=0.000000
double型にint型の計算結果を代入(2)
class Test {
public static void main(String[] args){
double c;
int a=2,b=1;
c=(double)b/a;
System.out.printf("c=%f\n",c);
}
}
public static void main(String[] args){
double c;
int a=2,b=1;
c=(double)b/a;
System.out.printf("c=%f\n",c);
}
}
結果
c=0.500000
double型にint型の計算結果を代入(3)
class Test {
public static void main(String[] args){
double c;
int a=2,b=1;
c=(double)(b/a);
System.out.printf("c=%f\n",c);
}
}
public static void main(String[] args){
double c;
int a=2,b=1;
c=(double)(b/a);
System.out.printf("c=%f\n",c);
}
}
結果
c=0.000000
int型にdouble型の計算結果を代入(1)
class Test {
public static void main(String[] args){
int c;
double a=2.0,b=1.0;
c=b/a;
System.out.printf("c=%d\n",c);
}
}
public static void main(String[] args){
int c;
double a=2.0,b=1.0;
c=b/a;
System.out.printf("c=%d\n",c);
}
}
結果
Test.java:5: 精度が落ちている可能性
検出値 : double
期待値 : int
c=b/a;
^
int型にdouble型の計算結果を代入(2)
class Test {
public static void main(String[] args){
int c;
double a=2.0,b=1.0;
c=(int)b/a;
System.out.printf("c=%d\n",c);
}
}
public static void main(String[] args){
int c;
double a=2.0,b=1.0;
c=(int)b/a;
System.out.printf("c=%d\n",c);
}
}
結果
Test.java:5: 精度が落ちている可能性
検出値 : double
期待値 : int
c=(int)b/a;
^
int型にdouble型の計算結果を代入(3)
class Test {
public static void main(String[] args){
int c;
double a=2.0,b=1.0;
c=(int)(b/a);
System.out.printf("c=%d\n",c);
}
}
public static void main(String[] args){
int c;
double a=2.0,b=1.0;
c=(int)(b/a);
System.out.printf("c=%d\n",c);
}
}
結果
c=0
| 固定リンク
コメント