Ⅰ 在java中把double類型轉換成long類型,丟失數據位是什麼,為什麼
long是
長整型
,在怎麼長本身也是整型,12.10的整形部分是12,當然結果是12,只不過long類型要比int類型值的范圍要更廣。
Ⅱ java中double型別轉換的方法是什麼
你好Double型別是double的包裝類,在JDK1.5以後,二者可以直接相互賦值,稱為自動拆箱和自動裝箱。看你的提示,我推測你的jdk版本在1.5以前。
如果是這樣,可以用Double中的方法,將包裝類轉為基本資料型別,如:
double amount = rec.getAmount().doubleValue()。
Java基本型別:
Java基本型別共有八種,基本型別可以分為三類,字元型別char,布林型別boolean以及數值型別byte、short、int、long、float、double。
數值型別又可以分為整數型別byte、short、int、long和浮點數型別float、double。JAVA中的數值型別不存在無符號的,它們的取值范圍是固定的,不會隨著機器硬體環境或者作業系統的改變而改變。
實際上,JAVA中還存在另外一種基本型別void,它也有對應的包裝類java.lang.Void,不過我們無法直接對它們進行操作。
double是基本型別,而Object是類型別
所汪兄以要把double轉換成對應的包裝類
double d = 1.2;
Double dd = d;
因為Object是所有類的父類,所以已經可以把dd作為Object型別的引數了
如果文字內的格式為:
123456
123222
...
222222
'讀檔案返回字串
Private Function ReadFile(filePath As String) As String'filepath 是檔案地址
Dim fileStr As String
Open filePath For Input As #1
Do While Not EOF(1)
Line Input #1, tem
fileStr = fileStr & tem & vbCrLf
Loop
Close #1
ReadFile = fileStr
End Function
呼叫方法:
dim k() as long
k=Split(ReadFile(檔案地址),vbCrlf)
推薦軟體:迅捷CAD轉換器
轉換步驟詳情:
1、到迅捷CAD轉換器官網下載最新版本的迅捷CAD轉換器,並且安裝好。
2、然後開啟安裝後的軟體,開啟後點擊介面左側上的第一個功能—「CAD版本轉換」按鈕。
3、接著進來CAD檔案的新增,按照介面右側的提示進行檔案的新增,可以直接點選「新增檔案」按鈕將檔案進行新增,也可以直接拖拽檔案進行新增。
4、檔案新增完成後選擇轉換後文件的儲存路徑,點選右側介面上的「瀏覽」按鈕,選擇好睏和襲檔案所需要儲存的路徑。
5、最後進行輸出型別和輸出版本的選擇,在下拉框中可以直接選擇所需要轉換的版本和格式。選擇完成後點選「批量轉換」按鈕進行轉換。
TCHAR 是寬位元組的,string沒有具體的說明的話應該是窄位元組的,
string shuzi2 = Convert.ToDouble(shuzi1);
改
double shuzi2 = Convert.ToDouble(shuzi1);
強制型別轉換:當運算元的型別不同,而且不屬於基本資料型別時,經常需要強制型別轉換,將運算元轉化為所需要的型別。強制型別轉換具有兩種形式,稱為顯式強制轉換和隱式強制型別轉換。
1、顯式強制型別轉換:顯式強制型別轉換需要使用強制型別轉換運運算元,格式如下:type(<expression>)或(type)<expression> 其中,type為型別描述符,如int,float等。<expression>為表示式。經強制型別轉換棚粗運運算元運算後,返回一個具有type型別的數值,這種強制型別轉換操作並不改變運算元本身,運算後運算元本身未改變,例如:int nVar=0xab65;char cChar=char(nVar);上述強制型別轉換的結果是將整型值0xab65的高階兩個位元組刪掉,將低端兩個位元組的內容作為char型數值賦值給變數cChar,而經過型別轉換後nVar的值並未改變。
2、隱式強制型別轉換:隱式型別轉換發生在賦值表示式和有返回值的函式呼叫表示式中。在賦值表示式中,如果賦值符左右兩側的運算元型別不同,則將賦值符右邊運算元強制轉換為賦值符左側的型別數值後,賦值給賦值符左側的變數。在函式呼叫時,如果return後面表示式的型別與函式返回值型別不同,則在返回值時將return後面表示式的數值強制轉換為函式返回值型別後,再將值返回,如:int nVar;double dVar=3.88;nVar=dVar;執行本句後,nVar的值為3,而dVar的值仍是3.88
型別轉換;
1.自動型別轉換
2.強制型別轉換
自動型別轉換分兩種情況:1,不同型別的資料進行運算時,系統會自動將運算優先順序別低的轉換成級別高的,結果和運算級別高的資料型別一樣。2,賦值運運算元兩邊型別不一樣時,系統會自動將右側表示式的型別轉換成左側的變數型別,然後再賦值
強制型別轉換:如:(int)3.1415 就是取整數部分(int)a%10 取a的十位數,若a是int型,取a的平方根就是 sqrt((double)a)
下面給你例舉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中,如何將double類型數據轉換為16進制字元串或者是16進制位元組數組
1、轉化為long類型
先Double.doubleToLongBits/Double.doubleToRawLongBits,得到long類型,
例子:
longl=0x0102030405060708L;
2、轉化為16進制字元串或數組
byte[]b=newbyte[8];
b[0]=(byte)(l&0x000000000000FFL);
b[1]=(byte)((l&0x0000000000FF00L)>>8);
b[2]=(byte)((l&0x0000000000FF0000L)>>16);
b[3]=(byte)((l&0x00000000FF000000L)>>24);
b[4]=(byte)((l&0x000000FF00000000L)>>32);
b[5]=(byte)((l&0x0000FF0000000000L)>>40);
b[6]=(byte)((l&0x00FF000000000000L)>>48);
b[7]=(byte)((l&0xFF00000000000000L)>>56);
Ⅳ java中將一個double類型的數強制轉換為long 型是四捨五入嗎
Java 中 long 是一個整數基本類型, 長度為64bits, 即8位元組.而double存在小數;如果帶小數點的double轉long型必定會造成數據變化!那麼,是怎麼變化的呢?
由此可見,java double轉long型是取整運算;