Java 数据类型


Java是一种强类型语言。这意味着,在Java中,每种数据类型都有自己的严格定义。当数据类型之间发生任何冲突时,没有隐式数据类型转换。程序员应明确声明数据类型的任何更改。

Java定义了8种原始数据类型: byteshortintlongcharfloatdoubleboolean

它们分为以下几类:

  • 整型
  • 浮点数字
  • 人物
  • 布尔类型

下面给出了每种数据类型的详细信息:

整数:

它们有四种类型: byteshortintlong 。重要的是要注意这些是正负值。有符号整数使用2的补码存储在计算机中。它包含负值和正值,但采用不同的格式,如(-1 to -128)(0 to +127) 。无符号整数可以保存较大的正值,而不包含负值(0 to 255) 。与C ++不同,Java中没有无符号整数。

字节:

字节数据类型是8位带符号的二进制补码整数。

Wrapper Class: Byte

 Minimum value: -128 (-2^7)

 Maximum value: 127 (2^7 -1)

 Default value: 0

 Example: byte a = 10 , byte b = -50;

short:

短数据类型是16位带符号的二进制补码整数。

Wrapper Class: Short

 Minimum value: -32,768 (-2^15)

 Maximum value: 32,767 (2^15 -1)

 Default value: 0.

 Example: short s = 10, short r = -1000;

int:

int数据类型是32位带符号的二进制补码整数。除非存在对内存的担忧,否则它通常用作整数值的默认数据类型。

Wrapper Class: Integer

 Minimum value: (-2^31)

 Maximum value: (2^31 -1)

 The default value: 0.

 Example: int a = 50000, int b = -20

long:

长数据类型是64位带符号的二进制补码整数。

Wrapper Class: Long

 Minimum value: (-2^63)

 Maximum value: (2^63 -1)

 Default value: 0L.

 Example: long a = 100000L, long b = -600000L;

 By default all integer type variable is "int". So long num=600851475143  will give an error.
 But it can be specified as long by appending the suffix L (or l)

浮点:

这些也称为实数,用于涉及分数精度的表达式。它们有两种类型: floatdouble 。在货币或研究数据等精确数据的情况下,实际上可以避免浮动。

float:

float数据类型是单精度32位IEEE 754浮点数

Wrapper Class: Float

 Float is mainly used to save memory in large arrays of floating point numbers.

 Default value: 0.0f.

 Example: float f1 = 24.5f;

 The default data type of floating-point number is double. So float f = 24.5 will introduce an error.
 However, we can append the suffix F (or f) to designate the data type as float.

double:

双数据类型是双精度64位IEEE 754浮点 。此数据类型通常是默认选择。绝不应将此数据类型用于精确值,例如货币。

Wrapper Class: Double

 This data type is generally used as the default data type for decimal values.

 Default value: 0.0d.

 Example: double d1 = 123.400778;

字符:

我们使用此数据类型来存储字符。这与C / C ++中的char不同。 Java使用UNICODE ,国际公认的字符集。 Java中的Char为16位长,而C / C ++中的Char为8位。

Wrapper Class: Character

 Minimum value: '\u0000' (or 0).

 Maximum value: '\uffff' (or 65,535).

 Default value: null ('\u0000').

 Example: char letterA ='a';

布尔:

这用于存储逻辑值。布尔类型的值可以为true或false。此类型通常由关系运算符返回。

There are only two possible values: true and false.

 Wrapper Class: Boolean

 This data type is used for simple flags that track true/false conditions.

 Default value is false.

 Example: boolean b = true, boolean b1 = 1(this is not possible in java and give incompatible type error), boolean b2;

参考数据类型:

除了原始数据类型之外,还有使用不同类的构造函数创建的引用变量。引用变量用于任何类以及数组,字符串,扫描程序,随机,模具等。引用变量使用new关键字初始化。

示例:

public class Box{

    int length, breadth, height;

    public Box(){
        length=5;
        breadth=3;
        height=2;
    }
 }

 class demo{

    public static void main(String args[]) {
        Box box1 = new Box();                //box1 is the reference variable
        char[] arr = new char[10];           //arr is the reference variable
    }
 }

串:

String不是原始数据类型,但它允许您在数组中存储多个字符数据类型,并且可以使用许多方法。当用户键入数据并且您必须对其进行操作时,它会非常常用。

在下面的示例中,我们尝试从字符串中删除所有字母并输出它:

String input = "My birthday is 10 January 1984 and my favorite number is 42";
 String output = "";

 for(int i=0;i<input.length();i++){

 //if the character at index i on the string is a letter or a space, move on to the next index
 if(Character.isLetter(input.charAt(i)) || input.charAt(i)==' '){

    continue;
 }

 output = output + input.charAt(i); //the number is added onto the output

 }

 System.out.println(output);

输出:

10198442

更多Java教程

学习更多Java教程