你了解Java数据类型吗?

Posted 黑马程序员官方

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你了解Java数据类型吗?相关的知识,希望对你有一定的参考价值。

在Java中,数据类型可以分为两种主要类型:原始数据类型和引用数据类型。

  • 基础数据类型
  • 引用数据类型(面向对象的时候可以深入学习)

一、基本数据类型的四类八种

数据类型关键字内存占用取值范围
整数byte1负的2的7次方 ~ 2的7次方-1(-128~127)
short2负的2的15次方 ~ 2的15次方-1(-32768~32767)
int4负的2的31次方 ~ 2的31次方-1
long8负的2的63次方 ~ 2的63次方-1
浮点数float41.401298e-45 ~ 3.402823e+38
double84.9000000e-324 ~ 1.797693e+308
字符char20-65535
布尔boolean1true,false

说明

​ e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。

​ 在java中整数默认是int类型,浮点数默认是double类型。

需要记忆以下几点

byte类型的取值范围:

​ -128 ~ 127

int类型的大概取值范围:

​ -21亿多 ~ 21亿多

整数类型和小数类型的取值范围大小关系:

​ double > float > long > int > short > byte

最为常用的数据类型选择:

  • 在定义变量的时候,要根据实际的情况来选择不同类型的变量。

比如:人的年龄,可以选择byte类型。

比如:地球的年龄,可以选择long类型。

  • 如果整数类型中,不太确定范围,那么默认使用int类型。
  • 如果小数类型中,不太确定范围,那么默认使用double类型。
  • 如果要定义字符类型的变量,那么使用char
  • 如果要定义布尔类型的变量,那么使用boolean

二、定义8种基本数据类型变量

public class VariableDemo3
    public static void main(String[] args)
        //1.定义byte类型的变量
        //数据类型 变量名 = 数据值;
        byte a = 10;
        System.out.println(a);

        //2.定义short类型的变量
        short b = 20;
        System.out.println(b);

        //3.定义int类型的变量
        int c = 30;
        System.out.println(c);

        //4.定义long类型的变量
        long d = 123456789123456789L;
        System.out.println(d);

        //5.定义float类型的变量
        float e = 10.1F;
        System.out.println(e);

        //6.定义double类型的变量
        double f = 20.3;
        System.out.println(f);

        //7.定义char类型的变量
        char g = 'a';
        System.out.println(g);

        //8.定义boolean类型的变量
        boolean h = true;
        System.out.println(h);

    

注意点

  • 如果要定义 一个整数类型的变量,不知道选择哪种数据类型了,默认使用int。
  • 如果要定义 一个小数类型的变量,不知道选择哪种数据类型了,默认使用double。
  • 如果要定义一个long类型的变量,那么在数据值的后面需要加上L后缀。(大小写都可以,建议大写。)
  • 如果要定义一个float类型的变量,那么在数据值的后面需要加上F后缀。(大小写都可以)

三、练习题

练习1:

需求:定义5个变量记录老师的信息并打印

代码示例:

public class VariableTest1
    public static void main(String[] args)
        //1.定义字符串类型的变量记录老师的姓名
        String name = "黑马谢广坤";
        //2.定义整数类型的变量记录老师的年龄
        int age = 18;
        //3.定义字符类型的变量记录老师的性别
        char gender = '男';
        //4.定义小数类型的变量记录老师的身高
        double height = 180.1;
        //5.定义布尔类型的变量记录老师的婚姻状况
        boolean flag = true;

        //输出5个变量的值
        System.out.println(name);
        System.out.println(age);
        System.out.println(gender);
        System.out.println(height);
        System.out.println(flag);

    

练习2:

需求:将(电影名称,主演,年份,评分)四个信息选择不同类型的变量,随后打印出来。

代码示例:

public class VariableTest2
    public static void main(String[] args)
        //1.定义字符串变量记录电影的名称
        String movie = "送初恋回家";
        //2.定义三个变量记录主演的名字
        String name1 = "刘鑫";
        String name2 = "张雨提";
        String name3 = "高媛";
        //3. 定义整数类型的变量记录年龄的年份
        int year = 2020;
        //4.定义小数类型的变量记录电影的评分
        double score = 9.0;

        //打印变量的信息
        System.out.println(movie);
        System.out.println(name1);
        System.out.println(name2);
        System.out.println(name3);
        System.out.println(year);
        System.out.println(score);

    

练习3:

需求:选择其中一部手机,将(手机价格,手机品牌)两个信息选择不同类型的变量,随后打印出来。

代码示例:

public class VariableTest3
    public static void main(String[] args)
        //1.定义小数类型的变量记录手机的价格
        double price = 5299.0;

        //2.定义字符串类型的变量记录手机的品牌
        String brand = "华为";

        //输出变量记录的值
        System.out.println(price);
        System.out.println(brand);
    

四、Java数据类型种的引用数据类型

在Java中,引用数据类型是指一种数据类型,用于引用对象或实例。引用数据类型是Java语言中最重要的数据类型之一,通常用于描述复杂的数据结构,如类、接口、数组、字符串等。

Java的引用数据类型可以分为以下几种类型:

  1. 类(Class):类是Java中最基本的引用数据类型,描述了对象的属性和行为。每个对象都是某个类的实例,可以通过类来创建和管理对象。
  2. 接口(Interface):接口定义了一个对象应该具有哪些方法,但不提供方法的具体实现。通过实现接口,可以让对象拥有这些方法的实现。
  3. 数组(Array):数组是一个具有相同数据类型的元素集合,可以通过下标访问数组中的元素。数组可以是多维的,例如二维数组、三维数组等等。
  4. 字符串(String):字符串是一个由字符组成的序列,可以使用字符串字面值或字符串对象创建。Java字符串是不可变的,一旦创建就不能修改。
  5. 枚举(Enumeration):枚举类型是一种特殊的引用数据类型,用于定义一组具有命名常量的值。枚举类型提供了一种类型安全的方式来表示一组相关的常量。

引用数据类型通常需要使用new关键字来创建对象或实例,并使用赋值运算符将其赋值给变量。引用数据类型的变量存储的是对象的引用,而不是对象本身。这意味着,引用数据类型变量可以指向null,表示它们当前没有引用任何对象。

了解Java的引用数据类型对于编写复杂的Java程序非常重要,因为它们提供了一种方便的方式来管理和组织数据。

以上是关于你了解Java数据类型吗?的主要内容,如果未能解决你的问题,请参考以下文章

面试官:你对JVM垃圾收集器了解吗?13连问你是否抗的住!

面试官:你对JVM垃圾收集器了解吗?13连问你是否抗的住!

20张图助你了解JVM运行时数据区,你还觉得枯燥吗?

送书活动你真的了解Java多线程编程吗?

20张图助你了解JVM运行时数据区,你还觉得枯燥吗?

面试官:JVM内存区域你了解吗?