java基础入门数据类型,JAVA基础教程:JAVA的基本数据类型及介绍
欢迎分享本文,转载请保留出处。
java的数据类型可以分为基本数据类型和引用数据类型,其中基本数据类型包括:字节型,字符型,短整型,整型,长整型,单精度型,双精度型和布尔型
引用类型又可以划分为 类,接口和数组。
java基本数据类型
1.数值类型
如下所示为java数值类型的数据范围
java数值型取值范围
当我们使用的数据不带有小数或分数时,即可以声明为整数变量,如:3,-147等
即为整数。java中,整数类型可以分为long,int,short,byte四种,long为64位,也就是8个字节(bytes),可表示范围 -9223372036854775808到9223372036854775808;int为32位,即4个字节,表示范围为 -2147483648 到 2147483647;若是数据值的范围在 -32768 到32767之间时,可以声明为short(短整型)类型;若是数据值更小,在-128到127之间时,可以声明为byte类型以节省内存空间。
当数据过长时?
public class DataDemo01{
public static main(String args[]){
int num = 9999999999999999 ; //数据超过取值范围
}
}
此时会出现数据溢出,那什么是数据溢出??
当整数的数据大小超出了可以表示的范围,而程序中又没有做数值范围的检查时,这个整数变量所输出的值将发生紊乱,且不会有预期的运行结果。
例如:
public class DataDemo02{
public static main(String args[]){
int max = Integer.MAX_VALUE; // 得到整型的最大值
System.out.println("整型的最大值:" + max) ; // 将最大值输出
System.out.println("整型最大值 + 1 :" + (max + 1)) ; // 最大值加1
// 最大值加2
System.out.println("整型最大值 + 2 :" + (max + 2)) ;
}
}
内存中的数据变化为:
此时会发生数据溢出,那怎么解决??
使用强制数据类型转换,防止溢出:
public class DataDemo03{
public static main(String args[]){
int max = Integer.MAX_VALUE; // 得到整型的最大值
System.out.println("整型的最大值:" + max) ; // 将最大值输出
System.out.println("整型最大值 + 1 :" + (max + 1)) ;
System.out.println("整型最大值 + 2 :" + (max + 2L)) ; // 最大值加2,转为long型
System.out.println("整型最大值 + 2 :" + ((long)max + 2L)) ; // 强制转为long型
}}
2.字符类型
字符类型在内存中占有2个字节,可以用来保存英文字母等字符。计算机处理字符类型时,是把这些字符当成不同的整数来看待,因此,严格说来,字符类型也算是整数类型的一种。
测试一下,字符和整型之间的相互转换:
public static main(String args[]){
char ch1 = 'a'; // 定义字符
char ch2 = 97; // 定义字符,整型转字符
System.out.println("ch1 = " + ch1); //打印输出
System.out.println("ch2 = " + ch2); //打印输出
}
此时我们可以发现两个结果是相同的,但是当数值型超过255时,则不能进行转化,具体请参考计算机的ascll码。
常见的转义字符:
java常见转义字符
3.浮点数类型与双精度浮点数类型(单精度和双精度)
在日常生活中经常会使用到小数类型的数值,如身高、体重等需要精确的数值时,整数就不能满足程序设计者的需求,在java中,这种数据类型称之为浮点数类型(float),其长度为32位(4字节),其数值范围为-3.4E38~3.4E38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。还有一种是双精度浮点数(double),使用 64 位(8字节) 来存储一个浮点数。 它可以表示十进制的15或16位有效数字,其可以表示的数字的绝对值范围大约是:-1.79E+308 ~ +1.79E+308
浮点型数据计算示例:
public class DataDemo06{
public static main(String args[]){
float num = 3.0f; // 定义float型变量
System.out.println("两个小数相乘:" + num * num); //计算两数相乘
}
}
4.布尔型
Boolean Variable (布尔变量)是具有两种逻辑状态的变量。它包含两个值:true和false。如果在表达式中使用布尔变量,则基于变量值的真值给出1或0的整数值。若要将整变量转换为布尔变量,如果整数值为0,则布尔值错误;否则,如果整数值不是0,则布尔值为真。布尔变量通常在运行时用作标记,例如用于更改程序流的逻辑测试。
布尔型的常用示例:
public class DataDemo07{
public static main(String args[]){
boolean flag = true;
//定义布尔型变量
System.out.println("flag = " + flag); //输出
}
}
5.数据类型的转换
Java的数据类型在定义时就已经确定了,因此不能随意转换成其他的数据类型,但Java允许用户有限度地做类型转换处理。数据类型的转换方式可以分为“自动类型转换”及“强制类型转换”两种。
在程序中已经定义好了数据类型的变量,若是想用另一种数据类型表示时,Java会在以下条件皆成立时,做东做数据类型的转换:
(1)转换前的数据类型与转换后的类型兼容
(2)转换后的数据类型的表示范围比转换前的类型大
示例:
public class DataDemo10{
public static main(String args[]){
float f =30.3f ; //定义浮点型变量
int x = (int)f; //强制转换为int型
System.out.println("x = " + x);//输出转型之后的值
System.out.println("10 / 3 = " + ((float)10 / 3));
}
}
java基础入门数据类型,JAVA基础教程:JAVA的基本数据类型及介绍相关推荐
- keyshot7工业产品零基础入门到精通自学教程视频全套设计课程
keyshot7工业产品零基础入门到精通自学教程视频全套设计课程9205 课程内容-玛丽圈资源网 --/A21 keyshot7工业产品零基础入门到精通自学教程视频全套设计课程/ ├──素材 | └─ ...
- 尚观python培训_尚观Python基础入门学习,资源教程下载
课程名称 尚观Python基础入门学习,资源教程下载 课程介绍 Python开发是目前很多朋友选择学习的一门技术,在大家学习的同时,楼主在这里给大家分享了一个运维python视频教程,需要的朋友可以下 ...
- 【尚硅谷】Web前端零基础入门HTML5+CSS3基础教程
[尚硅谷]Web前端零基础入门HTML5+CSS3基础教程 学习视频来源:哔哩哔哩弹幕网(https://www.bilibili.com/video/BV1XJ411X7Ud?spm_id_from ...
- Midjourney|文心一格prompt教程[基础篇]:注册使用教程、风格设置、参数介绍、隐私模式等
Midjourney|文心一格prompt教程[基础篇]:注册使用教程.风格设置.参数介绍.隐私模式等 开头讲一下为什么选择Midjourney和文心一格,首先Midjourney功能效果好不多阐述: ...
- AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍
AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍 深度学习框架 深度学习框架优势 深度学习框架设计思路 飞桨开源深度学习平台 飞桨开源深度学习平台全景 框架和全流程工具 模 ...
- WIFI基础入门--802.11--MAC基础--2
WIFI基础入门--802.11--MAC基础--2 1.故障排查工具 2.优化无线网络 3.关键点 4.面临挑战 4.1 射频链路质量 5.隐藏节点 6.访问模式与时机 6.1 DCF(分布式协调功 ...
- 2022年最新最全的Java零基础入门,零基础入门springboot,MySQL的学习
今天就来开始带领大家零基础入门Java开发 写在前面 为什么学习Java Java用途很广泛,如下图所示,Java可以做很多工作 JAVA语言发展史 2019年3月,JDK12版本发布. 2019年9 ...
- JAVA中整型常量的长度,Java基础入门篇(三)——Java常量、变量,
Java基础入门篇(三)--Java常量.变量, 一.Java常量 (一)什么是常量 常量指的是在程序中固定不变的值,是不能改变的数据.在Java中,常量包括整型常量.浮点型常量.布尔常量.字符常量等 ...
- java基础入门课后习题_《Java基础入门》课后习题及答案
<Java基础入门>课后习题及答案Java基础入门,课后习题,答案 博学谷--让IT教学更简单,让IT学习更有效 <Java基础入门>课后习题 第1章Java开发入门 一.填空 ...
- java从入门到精通----基础1
1.碰到问题怎么办? 1)找同学.同桌 2)找项目经理 3)找讲师 2.学习Java的窍门? 1)多想 2)多练 3.小要求: 1)课堂气氛活跃一些 一.笔记: 1.JAVA开 ...
最新文章
- 图论 ---- F. Useful Edges(不等式移项优化预处理 + 路径和简单路径的区别 + 最短路)
- o oia ospf 路由优先_OSPF基本配置及OSPF特殊区域配置
- IDEA 快捷键MacOS
- c# 基于layui的通用后台管理系统_【SpringBoot】三十三、SpringBoot+LayUI后台管理系统开发脚手架...
- linux的mount(挂载)命令详解(转)
- java split 数字_java截取字符串,截串,substring和split,分割字母和数字,正则缝隙...
- python处理teradata数据库_Python脚本连接Teradata数据库
- Delphi中destroy, free, freeAndNil, release用法和区别
- OSG仿真案例(4)——创建烟雾粒子效果
- 快速乘 (牛客 电音之王)
- 20张Python高清数据分析全知识地图,数据分析发展路线
- 定时语音提醒软件实现
- GAE+bottle+jinja2+beaker快速开发demo - Python,GAE - language - ITeye论坛
- FPGA DVB-S2 FEC 信道译码 BCH译码器 LDPC译码器 解交织器 IP core
- 2006-09-28 墨子的双眼皮
- Altium Designer——PCB中更改线宽的技巧总结
- 绝对收敛级数重排定理的证明
- cf各区服务器所在位置,为什么说“黑区”是CF第一服务器
- w7计算机配置在哪里打开,win7的运行在哪里打开 win7打开运行的方法【图文】
- Java中的 分号 ;
热门文章
- 『常识』如何防止静电?
- 在Visual C++中用ADO进行数据库编程(下)
- 编程技术越来越被看中 编程到底是什么?
- 经典面试题(12):关于事件循环,以下代码将输出什么?
- 使用ComplexHeatmap绘制3D热图
- 三大高通量测序平台芯片通量对比图(请把手机横过来看))
- 【NGS接龙】薛宇:漫谈生物信息圈儿的那些年、那些事!
- ​易生信-宏基因组2020 积微学术论坛:基于大数据整合准确预测土壤的枯萎病发生...
- Nature子刊:中科院动物所合作揭示灵长类血管衰老的驱动力
- es6 filter函数的用法_Python 函数式编程指北,不只是面向对象哦!超级详细!