因為實型比整型要多出小數部分,從整型轉為實型時不會有精度丟失,但是由實型轉為整型時則會丟失小數部分的資料。
顯式轉換,也就是強制型別轉換,例如下面的**:
int i=123;
double d=(double)i;
int k=(int)d;
在以上**中,首先將int
型的變數轉換為
double
型,在賦值給變數
d,然後又把
double
型的變數
d轉換為
int型並賦值給
int型的變數
k。因為最初變數
i的值為整數,因此在整個轉換過程中不會存在資料的丟失。但是如果變數
d帶有小數部分,那麼變數
k則將丟失小數部分的資料,如下面**:
double d=123.45;
int k=(int)d;
此時,變數k
的值就是
123了,小數部分的資料在轉換過程中就丟失了。另外,有些轉換是隱式的,**中並沒有顯示的強制型別轉換的**,例如下面的**:
double d2=12;
system.out.println(d2+123);
以上**的倆個語句都存在隱式的型別轉換。第一句,字面量12
的型別為
int,但是它卻賦值給了
double
型的d2,
其中就存在隱式的
int到
double
的轉換過程;第二句,
double
型的d2
和int
型的字面量
123想家,字面量
123在相加之前也有乙個隱式的轉換成
double
型的過程。
注意:在算術運算過程中,型別的轉換必須遵守乙個原則,就是由低位向高位轉換,以變數中的型別位元組長度最大的為型別目標。
java 中整型與字元型的相互轉換
字元型轉換成整型 1.轉換成int型 int integer num integer.parseint string str 2.轉換成long型 long long num long.parselong string str 3.轉換成short型 short short num short.pa...
整型與字元型的相互轉換
最近發現做程式時經常會遇到整型與字元型的相互轉換的問題,所以我今晚就狠下心花點時間整理了下,以下是我的整理的筆記,都是關鍵 具體大家再實現吧,如有問題與我聯絡 mail rainday163 163.com 整型到字元型的轉換 1.char str 20 int a 10 sprintf str,d...
Java中Date與String的相互轉化
使用 public final string format date date 方法 如下 建立日期物件 date d date 給定輸出格式 dateformat sdf new dateformat yyyy mm dd hh mm ss 呼叫方法 string str sdf.format d...