当前位置: 首页 > news >正文

【Java基础】02.Java数据类型

目录

Java 数据类型

3.1 java程序中 “+” 号的使用

3.2 java中的数据类型

3.2.1 基本数据类型:数值型

(1)整数类型

(2)浮点(小数)类型

3.2.2 基本数据类型:字符型

3.2.3 基本数据类型:布尔型

3.2.4 基本数据类型转换

(1)自动类型转换

(2)强制类型转换

(3)基本数据类型和字符串(String)类型的转换

3.2.5 引用数据类型:类(class)

3.2.6 引用数据类型:接口(interface)

3.2.7 引用数据类型:数组([ ])


本篇内容是对Java中,基本数据类型和引用数据类型的基本介绍,有助于零基础的小伙伴快速入门。

Java 数据类型

3.1 java程序中 “+” 号的使用

3.2 java中的数据类型

说明:String类型是一个类,属于引用类型。

3.2.1 基本数据类型:数值型

(1)整数类型

整数类型小细节

第一条,”有固定的范围和字段长度“,指的是在不同的操作系统下,Java的整数类型所占存储空间和表示范围是不变的。如byte占用1个字节,范围为-128 ~ 127。

第二条,Java中整型常量默认为int型,如7。若想把它声明为long型,则可以在后面加“L”,如7L。则“7L”就是long型的7。

(2)浮点(小数)类型

面试中可能问到:

浮点数在机器中的存放形式:浮点数 = 符号位 + 指数位 + 尾数位。

浮点类型小细节

说明:

(1)上图第2点,看下图中注释:

(2)上图第5点,看下图注释:

浮点类型,两数相除,比较相等的方法如上。(因为浮点数除法在计算机中涉及到精度的问题,所以不能直接比较相等,而是在一个精度范围内比较相等)。

3.2.2 基本数据类型:字符型

字符类型小细节

3.2.3 基本数据类型:布尔型

布尔类型小细节:

值得注意:与C语言不同,布尔类型不可以用0或1来代替。

3.2.4 基本数据类型转换

(1)自动类型转换

在进行赋值或运算时,精度较小的类型自动转换为精度的大数据类型。

一个转换的例子:

上图中,“a”字符转为了int型,存储在num中。

基本数据类型自动转换小细节

(2)强制类型转换

强制类型转换,精度降低溢出例子:

强制类型转换小细节:

上图第3条,int常量值可以赋值给char类型变量,因为char类型本质是一个整数。int变量不能直接赋值给char类型变量,因为int是高精度,char相较于int是低精度类型,需要强制转换。

(3)基本数据类型和字符串(String)类型的转换

说明:

(1)将基本数据类型转为字符串(String)类型很简单,只要在变量后加空字符串( + “” )就可以了。

(2)将字符串(String)类型转为基本数据类型,需要调用基本类型包装类中的parseXX方法即可。

值得注意的是,将字符串(string)类型转换为字符(char)类型,一般指的是将字符串第一个字符取出来。

利用xx.charAt(0)方法,取出字符串xx的第一个字符。如下图所示

字符串基本数据类型转换小细节:

3.2.5 引用数据类型:类(class)

类与对象概述

类就是自己定义的数据类型,类里面包含自己定义的属性和方法。创建一个对象,这个对象就可以调用里面的属性和方法。

类与对象的区别

类包含很多属性,但属性都没有具体值,是抽象的。但对象是具体的,每一个都有具体的属性。如Cat(猫)类,它包含名字,颜色等属性,new一个Cat对象,这个对象有具体的名字,颜色等具体属性。

3.2.6 引用数据类型:接口(interface)

接口基本介绍:

接口的使用小细节:

3.2.7 引用数据类型:数组([ ])

什么是数组?

数组的定义方式:

方式1:动态初始化(直接)

另外:

数据类型 数组名[ ] = new 数据类型[大小] 等价于 数据类型[ ] 数组名 = new 数据类型[大小]。也就是说,第一个“[ ]”放在放在数据类型后面,或者变量名后面都是可以的,一般放在数据类型后面,因为这样定义比较清晰。

方式2:动态初始化(先声明,再分配空间)

说明:

此种方法与第一种不同,先声明,当满足条件时,可能再new(分配空间)。

方式3:静态初始化

数组的注意事项:

(以上来自韩顺平老师课程笔记整理) 

http://www.lryc.cn/news/513585.html

相关文章:

  • Python爬虫(一)- Requests 安装与基本使用教程
  • 线段树保姆级教程
  • logback之自定义过滤器
  • 如何用CSS3创建圆角矩形并居中显示?
  • Java 开发中的指定外部 Jar 路径详解
  • python爬虫--小白篇【selenium自动爬取文件】
  • TI毫米波雷达原始数据解析之Lane数据交换
  • overscroll-behavior-解决H5在ios上过度滚动的默认行为
  • Nacos配置中心总结
  • rouyi(前后端分离版本)配置
  • 超大规模分类(一):噪声对比估计(Noise Contrastive Estimation, NCE)
  • Windows 下安装 triton 教程
  • 复盘与导出工具最新版9.15重磅发布-全新UI兼容所有windows系统
  • 家用电器销售系统|Java|SSM|JSP|
  • NRF24L01模块通信实验
  • 2024年12月CCF-GESP编程能力等级认证Scratch图形化编程三级真题解析
  • 【MySQL系列】VARCHAR为啥一般是255
  • 图文教程:使用PowerDesigner导出数据库表结构为Word/Html文档
  • Coroutine 基础五 —— Flow 之 Channel 篇
  • 快速掌握Elasticsearch检索之二:滚动查询(scrool)获取全量数据(golang)
  • C++设计模式:状态模式(自动售货机)
  • 【网络安全实验室】脚本关实战详情
  • ts总结一下
  • MySQL数据库笔记——主从复制
  • OpenAI发布o3:圣诞前夜的AI惊喜,颠覆性突破还是技术焦虑?
  • 欧拉-伯努利梁自由波动的频散关系
  • Cursor小试1.生成一个网页的接口请求工具
  • Xilinx DCI技术
  • Kubernetes Pod 优雅关闭:如何让容器平稳“退休”?
  • 鸿蒙应用开发(1)