2017-04-15 42 views
-1

我在Java中編寫代碼來接受一個數字的輸入並輸出它。然後我輸入了一個導致錯誤的大數字。之後,我發現了Java中整數的不同數據類型。 這是我寫的一個例子。Java中的數字數據類型有什麼用途?

import java.util.Scanner; 
public class InputOutput { 
    public static void main(String[] args) { 
     Scanner scan = new Scanner(System.in); 
     byte b = scan.nextByte(); 
     short s = scan.nextShort(); 
     int i = scan.nextInt(); 
     long l = scan.nextLong(); 

     System.out.println("The integer is " + b + "."); 
     System.out.println("The integer is " + s + "."); 
     System.out.println("The integer is " + i + "."); 
     System.out.println("The integer is " + l + "."); 
    } 
} 

什麼原因存在這麼多的整數數據類型?

+1

因爲它們很有用。一旦你有了更多的Java編程經驗,你將會了解它們的用處。 –

+0

@Zarif Ceaser,你忽略了一個整型,'char'。它與'short',16位一樣大小,但沒有簽名。 –

回答

0

考慮擁有一部2000年的手機,並且在手機中分配了一個小內存,您將使用字節,因爲它可以影響性能,因爲它範圍從-2,147,483,648到2,147,483,647等。當你創建一個數組時,你可以通過使用byte而不是int來節省內存

byte 1 byte -128 to 127 
short 2 bytes -32,768 to 32,767 
int  4 bytes -2,147,483,648 to 2,147,483, 647 
long 8 bytes -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807            
float 4 bytes approximately ±3.40282347E+38F 
(6-7 significant decimal digits) 
Java implements IEEE 754 standard 
double 8 bytes approximately ±1.79769313486231570E+308 
(15 significant decimal digits) 
char 2 byte 0 to 65,536 (unsigned) 
boolean not precisely defined* true or false 
0

不同的數據類型適用於各種特定用途。一個整數只能是一個整數值,其中float和long可以是十進制值。由於多種原因,這些不同的數據類型是必需的。首先,它給設計者提供了更多的選擇。黑客生產代碼時也是必要的。一般來說,數字越大,它在內存中佔用的空間就越多,所以如果你知道你需要的數量只佔用X的空間量,那麼就不需要聲明一個變量佔用2X的空間量。

相關問題