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

《Java基础》变量和数据类型

综述

在开始学习变量之前,我们思考一下为什么需要使用变量。
首先我们从小开始学习加法减法的时候,后来我们再学更难的东西就是代数,其中的x和y是我们要求解的内容,这些内容就是变量。
变量是人的思维的提升,没有变量就没有真正的程序。

为什么要有数据类型?

使用数据类型可以合理的使用内存
比如我们去购物的时候,如果用小袋子就装小的商品,大的袋子装大的商品。这样可以合理使用袋子的空间。
你想想你每次使用一个只需要表示真和假的0和1都要用8个字节实在是太浪费了。

正文

变量是程序的基本组成单位
变量的数据类型

  • 基本数据类型
    基本数据类型包括数值型,字符型和布尔类型,数值类型包括整型和浮点型。
    整型包括byte short int long
    浮点型包括 float 和 double

对于整数类型来说

类型占用存储空间范围
byte1字节-128~127
short2字节-32768~32767
int4字节-2147483648-2147483647
long8字节-263~263-1

对于浮点数类型来说,分为指数和尾数,单开一个符号位。
指数位的第一位是指数的符号位。

类型占用的存储空间存储(符号位 指数位 尾数位)
float4字节1 8 23
double8字节1 11 52

浮点数最大值计算的方法(double同理 1.798E308)
在这里插入图片描述
char 类型占用2个字节
boolean 类型一般占用1个字节。

类型占用的存储空间存储
char2字节2字节
boolean1字节硬件1位

为什么char 占用两个字节?

Java编译器默认使用Unicode编码,因此2字节可以表示所有字符。

  • 引用数值类型
    引用数据类型包括类、接口和数组类型。

数据类型的使用

使用数据类型的坑

package chapter01;public class Main {public static void main(String[] args) {byte b = 127;// byte b = 128 就会报错,java是强类型语言short s = 32767;// short s = 32768就会保存int i = 10;//int 也有取值范围 如果是2进制就是0b开头// 如果是8进制就是0开头// 如果是十六进制就是0x开头long L = 90L;// long 可以使用L,也可以不用float f = 3.14f;//float 后面必须加fdouble d = 3.14;// double d = 3;也是对的boolean boo = true;char ch = 57;char ch1 = ' ';//char ch = '';是不对的}
}
http://www.lryc.cn/news/459068.html

相关文章:

  • FLINK内存管理解析,taskmanager、jobmanager
  • 【AI论文精读13】RAG论文综述2(微软亚研院 2409)P5-可解释推理查询L3
  • 优达学城 Generative AI 课程3:Computer Vision and Generative AI
  • UE5 C++ 通过绑定编辑器事件实现控制柄顶点编辑
  • 云计算ftp 服务器实验
  • node.js服务器基础
  • 2-SAT 问题详解:逻辑约束与图论的结合
  • 使用NetTopologySuite读写gpkg文件
  • 什么是http?列出常见方法并解他们?
  • 通过修改注册表来提高导出图像的分辨率(PPT尝试)
  • OpenCV 环境配置
  • 使用通义千问模拟ChatGPT-o1进行思考,并以类似于ChatGPT-o1的形式输出
  • 维生素对于生活的重要性
  • STM32学习--4-1 OLED显示屏
  • 原生 App 上架 Mac App Store 过程总结
  • [实时计算flink]双流JOIN语句
  • metahuman如何导入UE5
  • Python知识点:基于Python技术,如何使用TensorFlow进行自动驾驶模型训练
  • Django的请求与响应
  • [java]Iterable<Integer> 和Iterator<Integer>的区别和用法
  • JavaScript进行数据可视化:D3.js入门
  • 字符串拼接方法性能对比和分析
  • [Halcon矩阵] 通过手眼标定矩阵计算相机旋转角度
  • 推荐几本编程入门书目
  • 每天一个数据分析题(五百零五)- 提升方法
  • 华为云ECS部署DR模式的LVS
  • 如何在 Jupyter Notebook 执行和学习 SQL 语句(上)
  • 数据结构-5.7.二叉树的层次遍历
  • RISC-V知识点目录
  • C++11 新特性 学习笔记