Menu Close

JAVA的数据类型 – 基本数据类型 (1.8)

数据类型是任何编程语言最重要的基础。 这是每个初学者都应该了解的最重要的概念。 数据类型对于表示存储值的类型、性质和操作至关重要。

无论是创建简单程序还是开发任何应用程序或软件, JAVA数据类型都是必须掌握的。

在本教程中,我们将学习各种各样的 Java 数据类型。 在开始学习 Java 数据类型之前,让我们先了解一下一般的数据类型。

什么是计算机科学的数据类型 ?

在计算机科学中,数据类型是数据的一种属性,它告诉编译器或解释器该数据应该怎么样储存和使用。

数据类型限制了变量的范围。它定义了该类型的数据值如何存储在内存中,可以进行那些操作。

数据类型包含存储类别,如整数、浮点值、字符串、字符等。

例如,如果一个变量是“int”数据类型,那么它只能保存整数值。

在转向 Java 数据类型之前,您必须了解编程语言的类型。

主要有两种类型的编程语言:

第一种是静态类型语言,其中每个变量的数据类型都必须在编译时定义。也就是说,我们必须先声明变量的类型,然后才能使用它。

一旦我们声明了一个特定数据类型的变量,我们就不能再改变它的数据类型。但是,它们可以通过使用显式类型转换来转换为其他类型(不包括布尔值数据类型)。

一些静态类型语言是 C、C++、C#、Java 和 Scala。

例如,如果我们写 int num = 5;

那么这意味着变量 num 是整数类型并保存一个数值,它的类型将始终相同。

另一种是动态类型语言。在这种类型的语言中,数据类型可以随时间变化,并且在运行时检查变量。

一些动态类型语言是 Ruby、Python、Erlang、Perl、VB 和 PHP。

JAVA数据类型

Java 是一种静态类型语言。任何编程语言的基础都是它的数据类型和运算符。 Java 带有一组丰富的数据类型和运算符,这使其适用于任何类型的编程。

Java中有两类数据类型:

  • 原始数据类型 (基本数据类型,内置数据类型)
  • 非原始数据类型 (引用数据类型)

1.基本数据类型

编程语言预先定义了基本数据类型。基本类型是 Java 中可用的最基本的数据类型。 Java 中有 8 种基本数据类型:byte、char、short、int、long、float、double 和 boolean。

基本数据类型数据是Java 语言中数据操作的根本。基本数据类型有一个约束,即它们保存相同类型的数据并具有固定大小。原始数据类型也称为固有数据类型。我们还可以对原始数据类型执行各种操作。

下图显示了原始数据类型的完整图表——

primitive data types in java

基本数据类型分类如下:

1.1 JAVA字符

  • char 类型是一个单一的 16 位 Unicode 字符;
  • 最小值是 \u0000(十进制等效值为 0);
  • 最大值是 \uffff(即为 65535);
  • char 数据类型可以储存任何数字,字母和符号;
  • 字符两边必须有单引号包括;
  • 例子:char letter = ‘A’;。

语法:

char myChar = 'A' ;

例1.8.1: 显示字符

package datatype;

public class datatype {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 char marks,grade;
		    marks = '8';
		    grade = 'B';
		    System.out.println("Marks: "+marks);
		    System.out.println("Grade: "+grade);

	}

}

结果:

Marks: 8
Grade: B


我们也可以对它进行算术运算,因为它是一个无符号的 16 位类型。 例如,考虑以下程序:
例1.8.2: 显示字符和字符操作

// char can be handled like integers
public class CharClass
{
  public static void main(String args[])
  {
    char myChar1 = 'A';
    char myChar2 = 'B';
    System.out.println("myChar1: " +myChar1);
    System.out.println("myChar2: " +myChar2);
    myChar2++; // valid increment operation
    System.out.println("The Incremented value of myChar2: " +myChar2);
  }
}

结果

myChar1: A
myChar2: B
The incremented value of myChar2: C

1.2 JAVA整数数据类型

整数类型存储整数,可能是正数或负数,并且不应包含任何小数点后位数。 有效的整数类型是 – byte, short, int 和 long;变量的值或范围决定蔡奇什么样的数据类型。

整数数据类型及其储存空间
整数数据类型及其储存空间

1.2.1 byte 数据类型

语法:

byte myByte1 = -100 ;
byte myByte2 = 25 ;

  • byte 数据类型是8位、有符号的,以二进制补码表示的整数;
  • 最小值是 -128(-2^7);
  • 最大值是 127(2^7-1);
  • 默认值是 0;
  • byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;

例1.8.3: 显示Byte整形变量和byte整形变量的操作

public class ByteDataType
{
  public static void main(String args[])
  {
    byte myByte1,myByte2;
    myByte1 = 127;
    myByte2 = -48;
    System.out.println("Byte 1: " +myByte1);
    System.out.println("Byte 2: " +myByte2);
    myByte1++; // Looping back within the range
    System.out.println("Incremented Value of myByte1: " +myByte1);
  }
}

结果

Byte 1: 127
Byte 2: -48
Incremented Value of myByte1: -128

1.2.2 short 数据类型

语法

short myShort = 6000 ;

  • short 数据类型是 16 位、有符号的以二进制补码表示的整数
  • 最小值是 -32768(-2^15)
  • 最大值是 32767(2^15 – 1)
  • Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;
  • 默认值是 0

例1.8.4: 显示short整形变量和short整形变量的操作

public class ShortDataType
{
  public static void main(String args[])
  {
    short myShort = 6000;
    System.out.println("myShort: " + myShort);
  }
}

结果

myShort: 6000

1.2.3 int 数据类型
如果储存空间足够,我们更喜欢用 int 数据类型。 int数据类型是32位、有符号的以二进制补码表示的正整数或负整数。

语法:
int myNum = 700000 ;

  • 最小值是 -2,147,483,648(-231
  • 最大值是 2,147,483,647(231 – 1)
  • 大小: 4 bytes (32 bits)
  • 一般地整型变量默认为 int 类型;
  • 默认值是 0 ;
  • 例子:int a = 100000, int b = -200000。

在 Java 标准版 (SE) 8 及更高版本中,我们可以使用 int 数据类型来表示一个无符号的 32 位整数,其值在 [0, 232-1] 范围内。 我们使用 Integer 类来使用整数的 unsigned int 数据类型。

例1.8.5: 显示int整形变量和int整形变量的操作

public class IntDataType
{
  public static void main(String args[])
  {
    int myNum1, myNum2, result;
    myNum1 = -7000;
    myNum2 = 90000;
    result = myNum1 + myNum2;
    System.out.println("Number 1: " +myNum1);
    System.out.println("Number 2: " +myNum2);
    System.out.println("Number 1 + Number 2: " +result);
  }
}

结果

Number 1: -7000
Number 2: 90000
Number 1 + Number 2: 83000

1.2.4 long 数据类型

long 数据类型是具有8节64位的以二进制补码表示的整数。
语法:
long myLong = 11000000000L ;
L必须在该值的最后

  • 最小值是 -9,223,372,036,854,775,808(-2^63);
  • 最大值是 9,223,372,036,854,775,807(2^63 -1);
  • 这种类型主要使用在需要比较大整数的系统上;
  • 默认值是 0L;

在 Java 标准版 (SE) 8 及更高版本中,我们可以使用 long 数据类型来表示无符号的 64 位 long,其值在 [0, 264-1] 范围内。 我们使用 Long 类来使用 unsigned long 数据类型。

例1.8.6: 显示long整形变量和long整形变量的操作

public class LongDataType
{
  public static void main(String args[])
  {
    long myLong1, myLong2, result;
    myLong1 = 100000000L;
    myLong2 = 200L;
    result = myLong1 * myLong2;
    System.out.println("Number 1: " +myLong1);
    System.out.println("Number 2: " +myLong2);
    System.out.println("Number 1 * Number 2: " +result);
  }
}

结果:

Number 1: 100000000
Number 2: 200
Number 1 * Number 2: 20000000000

1.3 Java 浮点数据类型

浮点数据类型能够存储具有具有小数位的浮点值或实数值。 例如,它可以存储 5.5、100.78、2090.985 等小数。有效的浮点类型是 float 和 double。

我们将详细讨论它们。

1.3.1. float 浮点数据类型

语法
float myFloat = 256.8f ;

最后要有f或F。

  • float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
  • float 在储存大型浮点数组的时候可节省内存空间;
  • 默认值是 0.0f
  • 范围:1.40239846 x 10-45 to 3.40282347 x 1038
  • 最小值:Float.MIN_VALUE=1.4E-45 (2的-149次方)
    最大值:Float.MAX_VALUE=3.4028235E38 (2的128次方-1)
  • 浮点数不能用来表示精确的值,如货币;

例1.8.7: 显示float浮点变量和float浮点变量的操作

public class FloatDataType
{
     public static void main(String args[])
     {
          float myFloat1,myFloat2,result;
          myFloat1=1000.666f;
          myFloat2=110.77f;
          result=myFloat1-myFloat2;
          System.out.println("Number1: "+myFloat1);
          System.out.println("Number2: "+myFloat2);
          System.out.println("Number1-Number2: "+result);
     }
}

Output:

Number1: 1000.666
Number2: 110.77
Number1-Number2: 889.896

1.3.2 double数据类型

如果内存没有问题,double数据类型是我们更喜欢十进制值浮点数据类型。 由于它的精度可以高达 15 位小数。

使用 double 进行大型计算是安全的。 我们可以选择使用后缀 d 或 D 来选择double数据类型。

也就是说,19.67 和 19.67d 是相同的。

语法

double myDouble = 256.7879837 ;

  • double 数据类型是双精度、64 位、符合 IEEE 754 标准的浮点数;
  • 浮点数的默认类型为 double 类型;
  • double类型同样不能表示精确的值,如货币;
  • 默认值是 0.0d
  • 范围:4.9406564584124654 x 10-324 to 1.7976931348623157 x 10308
  • 最小值:Double.MIN_VALUE=4.9E-324 (2的-1074次方)
    最大值:Double.MAX_VALUE=1.7976931348623157E308  (2的1024次方-1)

例1.8.8: 显示double浮点变量和double浮点变量的操作

public class DoubleDataType
{
    public static void main(String args[])
    {
        double myDouble1, myDouble2, result;
        myDouble1 = 48976.8987;
        myDouble2 = 29513.7812d;
        result = myDouble1 + myDouble2;
        System.out.println("Number 1: " +myDouble1);
        System.out.println("Number 2: " +myDouble2);
        System.out.println("Number 1 + Number 2: " +result);
    }
}
Output:
Number 1: 48976.8987
Number 2: 29513.7812
Number 1 + Number 2: 78490.6799

1.4 Boolean Types ( 布尔数据类型 )

对于布尔类型boolean,永远只有truefalse两个值。

布尔数据类型是使用 boolean 关键字声明的 2 两个值数据类型。 它只能存储两个可能的值,即真和假。

此数据类型用于检查真假条件。 布尔数据类型仅存储 1 位信息,但大小没有精确定义。

语法:

boolean myBool = false ;

  • 空间: 运行的机器确定
  • 值: true, false
  • 默认值: false
  • 范围:true 或 false

例1.8.9: 显示布尔变量和布尔变量的操作

public class BooleanDataType
{
  public static void main(String args[])
  {
    boolean myBool = true;
    if(myBool == true)
      System.out.println("I am using a Boolean data type");
      System.out.println(myBool);
  }
}

Output:

I am using a Boolean data type
true
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Leave the field below empty!

Posted in Java教程

Related Posts