当前位置: 首页 > 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:静态初始化

数组的注意事项:

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

相关文章:

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

目录 Java 数据类型 3.1 java程序中 “” 号的使用 3.2 java中的数据类型 3.2.1 基本数据类型:数值型 (1)整数类型 (2)浮点(小数)类型 3.2.2 基本数据类型:字符型 3.2.3 基本…...

Python爬虫(一)- Requests 安装与基本使用教程

文章目录 前言一、简介及安装1. 简介2. 安装 Requests2.1 安装2.2 检查安装是否成功 二、使用 Requests 发送 HTTP 请求1. 发送 GET 请求2. 发送 POST 请求3. 发送 PUT 请求4. 发送 DELETE 请求5. 发送 HEAD 请求6. 发送 OPTIONS 请求 三、传递参数1. GET 请求传递 URL 参数1.1…...

线段树保姆级教程

买水果 Description 水果姐今天心情不错,来到了水果街。 水果街有n家水果店,呈直线结构,编号为1~n,每家店能买水果也能卖水果,并且同一家店卖与买的价格一样。 学过oi的水果姐迅速发现了一个赚钱的方法&#xff1a…...

logback之自定义过滤器

logback有两种过滤器,一种是context中的过滤器叫TurboFilter,是一个全局的过滤器,会影响所有的日志记录。另一种是Appender中的过滤器,只对所在的append有效。两者大同小异,这里我们以Appender的过滤器为例。 &#x…...

如何用CSS3创建圆角矩形并居中显示?

在网页设计中,圆角矩形因其美观和现代感而被广泛使用,居中显示元素也是一个常见的需求。今天,我们将学习如何使用CSS3的border-radius属性来创建圆角矩形,并将其居中显示在页面上。 如果你正在学习CSS,那么这个实例将非…...

Java 开发中的指定外部 Jar 路径详解

哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互…...

python爬虫--小白篇【selenium自动爬取文件】

一、问题描述 在学习或工作中需要爬取文件资源时,由于文件数量太多,手动单个下载文件效率低,操作麻烦,采用selenium框架自动爬取文件数据是不二选择。如需要爬取下面网站中包含的全部pdf文件,并将其转为Markdown格式。…...

TI毫米波雷达原始数据解析之Lane数据交换

TI毫米波雷达原始数据解析之Lane数据交换 背景Lane 定义Lane 确认确认LVDS Lane 数量的Matlab 代码数据格式参考 背景 解析使用mmWave Studio 抓取的ADC Data Lane 定义 芯片与DCA100之间的数据使用LVDS接口传输,使用mmWave Studio 配置过程中有一个选项是LVDS L…...

overscroll-behavior-解决H5在ios上过度滚动的默认行为

1. 问题 开发H5的过程中,经常会有android和ios两边系统需要兼容的情况。在ios上一直有个问题是当H5内容触及到页面顶部或底部时,还是可以被人为的往下或往下拉动界面。当然可能有的情况是比较适用的,比如你往下拉动,然后在导航栏…...

Nacos配置中心总结

Nacos配置中心总结 Nacos配置文件的加载顺序和优先级 加载顺序 nacos作为配置中心时,需要在bootstrap.yml文件中添加nacos config相关的配置,这样系统启动时就能先去拉取nacos server上的配置了。拉取过来后会和本地配置文件进行合并。 bootstrap.ym…...

rouyi(前后端分离版本)配置

从gitee上下载,复制下载地址,到 点击Clone,下载完成, 先运行后端,在运行前端 运行后端: 1.配置数据库,在Navicat软件中,连接->mysql->名字自己起(rouyi-vue-blog),用户名roo…...

超大规模分类(一):噪声对比估计(Noise Contrastive Estimation, NCE)

NCE损失对应的论文为《A fast and simple algorithm for training neural probabilistic language models》,发表于2012年的ICML会议。 背景 在2012年,语言模型一般采用n-gram的方法,统计单词/上下文间的共现关系,比神经概率语言…...

Windows 下安装 triton 教程

目录 背景解决方法方法一:(治标不治本)方法二:(triton-windows)- 安装 MSVC 和 Windows SDK- vcredist 安装- whl 安装- 验证 背景 triton 目前官方只有Linux 版本,若未安装,则会出…...

复盘与导出工具最新版9.15重磅发布-全新UI兼容所有windows系统

在9.11版本的基础上大更新: 1.应付费用户需求修复当更换明亮风格时软件超过电脑屏幕的bug!!!!! 2.支持所有windows版本,32/64位的win xp/7/8/10/11 3.修复开盘啦涨停原因排序bug 4.全新ui风格 5提前爆料:.9.2版本的分开…...

家用电器销售系统|Java|SSM|JSP|

【技术栈】 1⃣️:架构: B/S、MVC 2⃣️:系统环境:Windowsh/Mac 3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7 4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、JSP、jquery,html 5⃣️数据库可…...

NRF24L01模块通信实验

NRF24L01简要介绍 这里主要介绍模块的最重要的参数,废话就不多介绍了。   该模块是一款无线通信模块,一个模块即可同时具备发射和接收数据的功能,但是要想实现通信必须使用两个模块之间才能进行通信。NRF24L01模块使用的总线控制方式为SPI总…...

2024年12月CCF-GESP编程能力等级认证Scratch图形化编程三级真题解析

本文收录于《Scratch等级认证CCF-GESP图形化真题解析》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 一、单选题(一共 15 个题目,每题 2 分,共 30 分) 第 1 题 2024 年 10 月 8 日,诺贝尔物理学奖“意外地”颁给了两位计算机科学家约翰霍普菲尔德(John J. …...

【MySQL系列】VARCHAR为啥一般是255

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

图文教程:使用PowerDesigner导出数据库表结构为Word/Html文档

1、第一种情况-无数据库表,但有数据模型 1.1 使用PowerDesigner已完成数据建模 您已经使用PowerDesigner完成数据库建模,如下图: 1.2 Report配置和导出 1、点击:Report->Reports,如下图: 2、点击&…...

Coroutine 基础五 —— Flow 之 Channel 篇

1、Channel 与 Flow 简介与对比 所有知识都可总结为一个字 —— 流。包括数据流、事件流、状态流。 开发中最常用的 StateFlow 提供状态订阅。可以将一些信息包进 StateFlow 中进行保存。比如界面上显示的字符串,或者系统级别的信息,如用户状态。装进 …...

docker详细操作--未完待续

docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录&#xff0c;但是由于这个树组件的节点越来越多&#xff0c;导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多&#xff0c;导致的浏览器卡顿&#xff0c;这里很明显就需要用到虚拟列表的技术&…...

STM32HAL库USART源代码解析及应用

STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...

PHP 8.5 即将发布:管道操作符、强力调试

前不久&#xff0c;PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5&#xff01;作为 PHP 语言的又一次重要迭代&#xff0c;PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是&#xff0c;借助强大的本地开发环境 ServBay&am…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天&#xff0c;通信网络的角色正变得愈发关键。 2025年6月6日&#xff0c;为期三天的华南国际工业博览会在深圳国际会展中心&#xff08;宝安&#xff09;圆满落幕。作为国内工业通信领域的技术型企业&#xff0c;光路科技&#xff08;Fiberroad&…...