IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 【Java SE】第二章:基础数据类型 -> 正文阅读

[Java知识库]【Java SE】第二章:基础数据类型

🎇前言🎇:

在初步认识Java是什么之后,接下来便来到了语法学习中的重要部分数据类型与运算符,希望大家能有所收获。


目录

🎇前言🎇:

?数据类型?

💎数据类型和变量💎

💎整型变量💎

💎长整型变量💎

💎双精度浮点型变量💎

?💎单精度浮点型变量💎

?💎字节型变量💎

?💎字符型变量💎

💎短整型变量💎

💎布尔类型变量💎

?💎字符串类型变量(重点)💎

?💎常量💎

💡字面值常量:

💡final 关键字修饰的常量:

?💎类型转换?💎

🔑:隐式类型转换

🔑:强制类型转换



?数据类型?

在开始之前请大家看看下面这张图,建立起对数据类型认知的总框架。

本篇博客着重讲解基本数据类型,至于引用数据类型后期会进行讲解。


💎数据类型和变量💎

在学习数据类型之前大家一定要知道,数据类型是用来干嘛的?这就不得不去了解数据类型和变量之间的关系。

💡:1:数据类型是用来定义变量的。

? ? ? ? 2:数据类型决定了创建这个变量时所分配内存空间的大家

? ? ? ? 3:数据类型同时还决定了存放的内容,不同的数据类型存放不同类型的数据

而变量又是什么?

我们可以把变量想象为一个箱子,自然它就有类型和大小,它是一块用来存储数据的容器。


💎整型变量💎

定义方法:

int? 变量名=初始值;

使用方法

        int a=10;
        System.out.println(a);

空间大小:

int型变量占4个字节大小的空间。4个字节所表示的数据的范围是 -2^(31)-2^(31)-1

什么是字节?

字节是计算机中表示空间内存大小的最小单元。

计算机使用二进制存储数据,一个字节表示8个比特位。

💡:重点:Java语言具有良好的跨平台性。因此无论是16位平台还是32位或者是64位平台,整型变量都占四个字节的空间。

我们可以通过以下语句来打印出整型的最大值和最小值。

        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);

但处于大数据时代,在很多工程场景整型的最大值是很容易超出的,因此Java提供了长整型变量。


💎长整型变量💎

定义方法

long? 变量名=初始值;

使用方法

        long b=20;
        System.out.println(b);

空间大小:长整型占8个字节的空间,所表示数据的范围是 -2^(63)-2^(63)-1

长整型足以适用于绝大多数工程场景。

        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);

💎双精度浮点型变量💎

定义方法:

double? 变量名=初始值;

使用方法:

        double d=3.14;
        System.out.println(d);

空间大小:双精度浮点型变量占8个字节的空间。?

现在我们来看看一个有趣的例子。

        double c=1/2;
        System.out.println(c);
//结果:0.0

这是为什么呢?因为在Java中,整数/整数=整数,会把小数部分舍去,若想得到小数部分应该这样做。

        double e=1.0;
        double f=2.0;
        double g=e/f;
        System.out.println(g);
//其输出结果是:0.5

Java 的 double 类型的内存布局遵守 IEEE 754 标准(和C语言一样), 尝试使用有限的内存空间表示可能无限的小数, 势必会存在一定的精度误差.

?例如:

        double e=1.0;
        double f=3.0;
        double g=e/f;
        System.out.println(g);

输出结果:


?💎单精度浮点型变量💎

定义方法:

float? 变量名=初始值;

使用方法:

        float f=3.14f;
        System.out.println(f);

空间大小:4个字节大小的空间。


?💎字节型变量💎

定义方法:

byte? 变量名=初始值;

使用方法:

        byte value=20;
        System.out.println(value);

注意:1:字节类型变量存储的也是小数。

? ? ? ? ? ?2:字节类型变量存储的数据的范围是:(-128--127)


?💎字符型变量💎

定义方法:

char? 变量名=初始值;

使用方法:

        char c='A';
        System.out.println(c);

注意:在Java中的字符型变量所占的空间大小为2个字节。


💎短整型变量💎

定义方法:

short? 变量名=初始值;

        short a=3;
        System.out.println(a);

变量大小:1:短整型变量占两个字节的空间。

? ? ? ? ? ? ? ? ? 2:短整型变量所储存数据的范围是?-32768 -> +32767


💎布尔类型变量💎

定义方法:

boolean? 变量名=初始值;

注意:1:布尔类型变量只有 true(真)和false(假)两种取值。

? ? ? ? ? ?2:2. Java 的 boolean 类型和 int 不能相互转换, 不存在 1 表示 true, 0 表示 false 这样的用法.

? ? ? ? ? ?3:3. boolean 类型有些 JVM 的实现是占 1 个字节, 有些是占 1 个比特位, 这个没有明确规定.

使用示例:

        boolean a1=(3>5);
        System.out.println(a1);
        a1=(3<5);
        System.out.println(a1);
        a1=(5==5);
        System.out.println(a1);
        a1=(3==5);
        System.out.println(a1);

输出示例:


?💎字符串类型变量(重点)💎

定义方法:

String? 变量名=初始值;

使用示例:

        String name="zhangsan";
        System.out.println(name);

注意:1:在Java中我们一般用 双引号+若干字符?来表示字符串的字面值。

? ? ? ? ? ?2:字符串类型不是基础数据类型,而是引用类型。

字符串的’+‘操作:

字符串的+操作表示字符串的拼接。只要?操作符的两个操作数中有一个是字符串,就会进行字符串的拼接,将两个操作数合并成一个字符串。

🔑示例:

        String str1="hello"+"world";
        System.out.println(str1);

        String str2="hello"+10+20;
        System.out.println(str2);

        String str3="hello"+(10+20);
        System.out.println(str3);

💡:输出样例:


?💎常量💎

在了解了变量之后,现在来介绍常量。

在Java中每种类型的变量都对应着一种常量。那什么叫做常量呢?

常量顾名思义就是在程序运行时不能改变的量,在编译过程中就确定了取值。

💡字面值常量:

💡final 关键字修饰的常量:

示例:

这样会报错。

我们可以从中更加深入的了解何为常量.常量也可以理解为只能进行一次赋值操作,一旦给final修饰的常量赋值,它的值就不能够再被修改。


?💎类型转换?💎

类型转换一般分为两种:一种是隐式类型转换,一种是强制类型转换。

由于Java是强类型语言,在进行不同类型的赋值时会有严格的检验。

🔑:隐式类型转换

        int a=10;
        long b=20;
        b=a;//把int赋值给long不会报错
        a=b;//把long赋值给int就会报错

上述代码第一个赋值操作不会报错,第二个就会报错,这是为什么了?

同样的我们再来感受一下下面的代码。

        double d=3.5;
        float f=3.14;//这个会报错
        d=f;//这个不会报错
        f=d;//这个会报错

通过上述的两个例子我们可以看出来:

1:long表示的范围更大,将int类型赋值给long类型不会报错,反之则不行。

2:double表示的范围更大,将float类型赋值给double类型不会报错,反之则不行。

结论: 不同数字类型的变量之间赋值, 表示范围更小的类型能隐式转换成范围较大的类型, 反之则不行.

若要将上述表示大的范围的类型赋值给小的范围的类型就要进行强制类型转换。

🔑:强制类型转换

示例:

        double d=3.5;
        float f=(float)3.14;
        d=f;
        f=(float)d;

我们虽然可以通过强制类型转换让大的范围的类型得以赋值给小的范围的类型,但这其中存在精度丢失的风险,所以一般我们使用的时候,建议尽量类型对应。


由于本人水平十分有限,若有错误请即使告知!如果有帮助别忘了,万分感谢。

点赞👍? ? ? ? ?收藏?? ? 关注?

?

?

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-10-17 11:52:07  更:2021-10-17 11:52:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:33:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码