【Java基础教程】Java数据类型

简介: Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同大小的内存空间。

65e6e9499736459d941b7a39b5fb1e73.jpg


基础数据类型💬💬💬



整数类型


Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同大小的内存空间。


整型常量


整型常量有三种表达形式:十进制、八进制、十六进制

十进制数:由0~9组成,但不能以0开头。例如23,100

八进制数:由0~7组成,且以0开头。例如027,015

十六进制数:由0~ 9和A~ F组成,且以0x开头。例如0x2C,0x3B

Java中有四种整数类型,分别是byte、short、int、long



整数类型 占用字节数 数据位 表示范围
byte 1 8位 -128~127
short 2 16位 -32268~32767
int 4 32位 -2147483648~2147483647
long 8 64位 -2的63次方~2的63次方-1


public class User {
    public static void main(String[] args) {
    int a = 1;
    System.out.println(a);
    }
}
1


浮点数类型


浮点型常量是可以带小数点的数据类型,有两种表示形式:小数点形式、指数形式

小数点形式:由整数部分,小数点和小数部分组成。例如2.34,12.76

浮点型数据可以分为单精度浮点数(float)和双精度浮点数(double)


浮点数类型 占用字节数 数据位 范围
float 4 32位 -3.4e38~3.4e38
double 8 64位 -1.7e308~1.7e308


public class User {
    public static void main(String[] args) {
    float a = 1;
    System.out.println(a);
    }
}
1.0


字符类型


在Java中,字符常量是用单引号括起来恩典单个字符,如’a’,‘B’,‘1’

在Java语言中,还存在一种特殊的字符常量,称为转义字符。它是以\开头的字符序列。

常见转义字符如下表所示


转义字符 含义
\r 回车
\n 换行
\t 水平制表符(相当于tab,缩进)
\b 退格符(Backspace)
\f 换页符


布尔型


布尔型常量只有两个值:true(真)和false(假)


public class User {
    public static void main(String[] args) {
    boolean a = true;
    System.out.println(a);
    }
}
true


字符串类型


字符串类型是用双引号括起来的由一个或多个字符构成的序列


public class User {
    public static void main(String[] args) {
    String a = "hello Java world";
    System.out.println(a);
    }
}
hello Java world


引用数据类型💬💬💬



引用数据类型是建立在八大基本数据类型基础之上,包括数组、接口、类。引用数据类型是由用户自定义,用来限制其他数据类型。简单的说,除八大基本类型之外的所有数据类型,都为引用数据类型。

所有引用类型的默认值都为 null 。


数据类型转换💬💬💬


数据范围从小到大

byte < char,short< int < long < float < double


自动类型转换


把一个表示数据范围小的数值或者变量赋值给另一个表示范围大的变量

例如:double a = 10

public class User {
    public static void main(String[] args) {
        // 自动类型转换
        double a = 10;
        System.out.println(a); // 10.0
    }
}


强制类型转换


把一个表示数据范围大的数值或者变量赋值给另一个表示范围小的变量

例如:int h = (int)77.77;

如果直接double转换int会报错


fd09f798f8a74e338c76b44a6255c2d2.png


这时需要强制类型转换为int类型(不建议使用,使用会有损耗)


public class User {
    public static void main(String[] args) {
        // 强制类型转换
        int h = (int) 77.77;
        System.out.println(h); // 77
    }
}


结束语🏆🏆🏆


🔥推荐一款模拟面试、刷题神器网站

点击跳转进入网站

1、算法篇(398题):面试必刷100题、算法入门、面试高频榜单

2、SQL篇(82题):快速入门、SQL必知必会、SQL进阶挑战、面试真题

3、大厂笔试真题:字节跳动、美团、百度、腾讯…


相关文章
|
9天前
|
Java C语言 C++
课时9:Java数据类型划分(数据类型划分)
课时9介绍了Java的数据类型划分及其操作。Java数据类型分为基本数据类型和引用数据类型。基本数据类型包括八种:数值型(整形、浮点型)、字符型和布尔型;引用数据类型有数组、类和接口。重点讲解了每种数据类型的默认值、适用场景及选择原则,如整数用int,小数用double,日期时间用Long等。掌握这些内容对编程至关重要。
课时9:Java数据类型划分(数据类型划分)
|
9天前
|
Java
课时12:Java数据类型划分(字符型)
课时12介绍了Java中的字符型数据(char),包括字符的定义、与int类型的转换及应用。通过范例展示了如何观察字符、编码转换、大小写字母互转、保存中文字符,以及Java中字符处理的灵活性。字符型使用单引号声明,可与int互相转换,支持Unicode编码,能表示任何文字,包括中文。虽然实际开发中直接操作字符型的情况不多,但理解其特性有助于更好地编程。
44 17
|
9天前
|
存储 传感器 缓存
java变量与数据类型:整型、浮点型与字符类型
### Java数据类型全景表简介 本文详细介绍了Java的基本数据类型和引用数据类型,涵盖每种类型的存储空间、默认值、取值范围及使用场景。特别强调了`byte`、`int`、`long`、`float`、`double`等基本类型在不同应用场景中的选择与优化,如文件流处理、金融计算等。引用数据类型部分则解析了`String`、数组、类对象、接口和枚举的内存分配机制。
41 15
|
9天前
|
Java
课时14:Java数据类型划分(初见String类)
课时14介绍Java数据类型,重点初见String类。通过三个范例讲解:观察String型变量、&quot;+&quot;操作符的使用问题及转义字符的应用。String不是基本数据类型而是引用类型,但使用方式类似基本类型。课程涵盖字符串连接、数学运算与字符串混合使用时的注意事项以及常用转义字符的用法。
|
9天前
|
Java
课时13:Java数据类型划分(布尔型)
观察布尔型的操作。布尔是一位数学家的名字,这个布尔发明了两个单词:True、False(一个表示真一个表示假)。一般布尔类型都只表示逻辑的计算结果。
|
9天前
|
Java
课时11:Java数据类型划分(浮点类型)
课时11介绍了Java中的浮点数据类型。主要内容包括:1. 定义小数,默认使用Double类型;2. 定义Float变量,需在数值后加&quot;F&quot;或&quot;f&quot;进行强制转换;3. 观察不同类型计算结果,如Int型除法会丢失精度,需至少包含一个Double或Float类型以确保准确性。总结指出,在复杂计算中推荐使用Double类型以避免精度损失。
|
9天前
|
Java
课时10:Java数据类型划分(整型类型)
本文主要围绕Java中整型数据展开,详细讲解整型变量、常量的概念,整型数据运算规则,包括数据溢出问题及解决方法,数据类型转换(自动转换与强制转换)的原理和注意事项,同时介绍了整型数据默认值的相关知识,以及byte数据类型与int数据类型的关系和使用场景,帮助读者全面掌握Java整型数据的相关内容。
|
安全 Java 程序员
4月7日云栖精选夜读:给 Java 学习者的超全教程整理
作为Java程序员的我们,应该不仅对这门语言有所了解,而且我们在平常编程时也需要使用众多的库。比如小编知道的,如果要学习Java Web的话,SSH(Spring, Struts和Hibernate)肯定得会吧,或者至少了解基本的原理吧。
2781 0
|
16天前
|
存储 监控 Java
【Java并发】【线程池】带你从0-1入门线程池
欢迎来到我的技术博客!我是一名热爱编程的开发者,梦想是编写高端CRUD应用。2025年我正在沉淀中,博客更新速度加快,期待与你一起成长。 线程池是一种复用线程资源的机制,通过预先创建一定数量的线程并管理其生命周期,避免频繁创建/销毁线程带来的性能开销。它解决了线程创建成本高、资源耗尽风险、响应速度慢和任务执行缺乏管理等问题。
142 60
【Java并发】【线程池】带你从0-1入门线程池
|
5天前
|
存储 网络协议 安全
Java网络编程,多线程,IO流综合小项目一一ChatBoxes
**项目介绍**:本项目实现了一个基于TCP协议的C/S架构控制台聊天室,支持局域网内多客户端同时聊天。用户需注册并登录,用户名唯一,密码格式为字母开头加纯数字。登录后可实时聊天,服务端负责验证用户信息并转发消息。 **项目亮点**: - **C/S架构**:客户端与服务端通过TCP连接通信。 - **多线程**:采用多线程处理多个客户端的并发请求,确保实时交互。 - **IO流**:使用BufferedReader和BufferedWriter进行数据传输,确保高效稳定的通信。 - **线程安全**:通过同步代码块和锁机制保证共享数据的安全性。
55 23

热门文章

最新文章