【韩老师零基础30天学会Java 】03章 变量

第三章 变量

1. 变量介绍

为什么需要变量?

变量是程序的基本组成单位
变量有三个基本单位:类型+名称+值

在这里插入图片描述
在这里插入图片描述

//1.定义变量int age =20;double score=88.6;char gender='男';String name='jack';

变量使用注意事项

  1. 变量表示内存中的一个存储区域[不同的变量,类型不同,占用的空间大小不同,比如:int 4r个字节,double 就是 8个字节]
  2. 该区域有自己的名称[变量名]和类型[数据类型]
  3. 变量必须先声明,后使用,即有顺序
  4. 该区域的数据可以在同一类型范围内不断变化
  5. 变量在同一个作用域内不能重名
  6. 变量=变量名+值+数据类型,这一点请大家注意。变量三要素

2. +号的使用

在这里插入图片描述

3. 数据类型🚩

在这里插入图片描述

int-4 byte-1 short-2 long-8
float-4 double-8
char-2 boolean-1
String不属于基本数据类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

面试题:浮点数是右什么组成的?

浮点数=符号位+指数位+尾数位

通常情况下,应该使用double型,因为它比float型更精确。

public class IntDetail{public static void main(String[] args){//浮点数使用陷阱:2.7和8.1/3 比较double num11=2.7;double num12=8.1/3;//2.7System.out.println(num11);//2.7System.out.println(num12);//2.6999999999999997if(num11==num12){System.out.println("相等");}//正确写法if (Math.abs(num11-num12)<0.000001){System.out.println("差值非常小,到规定的精度,认为相等");}}
}

得到一个重要的使用点:当我们对运算结果是小数的进行相等判断时,要小心❗❗❗
应该是以两个数的差值的绝对值,在某个精度范围类判断。❗❗❗
细节:如果是直接查询得到的小数或者直接赋值,是可以判断相等。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

public class IntDetail{public static void main(String[] args){char c4=97;System.out.println(c4);//结果:a}
}

在这里插入图片描述

单引号引起来的是字符,双引号是字符串❗
在java中,char的本质是一个整数,在输出时,是unicode码对应的字符。

		char c4=97;char c5='a';System.out.println(c4);//结果:aSystem.out.println((int)c5);//结果:a

面试题:ASCII编码表一共有多少字符?

一共有128个字符,由一个字节表示,实际上一个字节可以表示256个字符,只用了128个。

Unicode编码表,字母和汉字统一都用两个字节表示。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

使用细节说❗❗❗
不可以0或非0的整数替代false和true,这点和C语言不同。

4. 编码

在这里插入图片描述

5. 数据类型转换

√ 介绍
当java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型
这个就是自动类型转换。
√ 数据类型按精度(容量)大小排序为(背,规则)
在这里插入图片描述

自动类型转换注意和细节:

  1. 有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
  2. 当我们把精度(容量)大 的数据类型赋值给精度(容量)小 的数据类型时,就会报错,反之就会进行自动类型转换。
  3. (byte,short)和 char之间不会相互自动转换。
  4. byte,short,char 他们三者可以计算,在计算时首先转换为int类型
  5. boolean 不参与转换
  6. 自动提升原则: 表达式结果的类型自动提升为操作数中最大的类型。

在这里插入图片描述

强制类型转换
自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型。
使用时要加上强制转换符(),但可能造成精度降低或溢出,格外要注意。

		int n1=(int)1.9;int n2=2000;byte b1=(byte)n2;System.out.println("n1=" + n1);//结果:1(造成精度损失)System.out.println("b1=" + b1);//结果:-48(造成数据溢出)		

在这里插入图片描述

练习
在这里插入图片描述
答案:
1)可以 / 错误(int–>short)
2)可以 / 不可以(int–>byte) / 可以
3)可以 / 可以 / 可以
4)可以 / 可以 / 不可以(int–>short)

在这里插入图片描述

		//基本数据类型->Stringint n1=100;float f1=1.1F;double d1=4.5;boolean b1=true;String s1=n1+"";String s2=f1+"";String s3=d1+"";String s4=b1+"";System.out.println(s1+" "+s2+" "+s3+" "+s4);//String->基本数据类型String s5="123";Double num1=Double.parseDouble(s5);Float num2=Float.parseFloat(s5);Long num3=Long.parseLong(s5);Byte num4=Byte.parseByte(s5);int num5=Integer.parseInt(s5);boolean b=Boolean.parseBoolean("true");short num6=Short.parseShort(s5);System.out.println("================");System.out.println(num1);//123.0System.out.println(num2);//123.0System.out.println(num3);//123System.out.println(num4);//123System.out.println(num5);//123System.out.println(num6);//123System.out.println(b);//true//怎么把字符串转成字符char ->含义是指把字符串的第一个字符得到System.out.println("================");System.out.println(s5.charAt(0));//1

在这里插入图片描述

6. 作业

在这里插入图片描述
答案:
30
8

在这里插入图片描述

	char c1='\n';char c2='\t';char c3='\r';char c4='\\';char c5='1';char c6='2';char c7='3';System.out.println(c1);System.out.println(c2);System.out.println(c3);System.out.println(c4);System.out.println(c5);System.out.println(c6);System.out.println(c7);
		String book1="天亮";String book2="江湖";System.out.println(book1+book2);char c1='男';char c2='女';System.out.println(c1+c2);double price1=123.56;double price2=100.11;System.out.println(price1+price2);

答案:
天亮江湖
52906
223.67000000000002

		String name="jack";int age=20;double score=90.8;char gender='男';String hobby="打篮球";System.out.println("姓名\t年龄\t成绩\t性别\t爱好\n"+name+'\t'+age+'\t'+score+'\t'+gender+'\t'+hobby);

输出:
在这里插入图片描述

7. 小结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/467655.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

扭蛋机小程序开发,潮玩扭蛋机市场下新机遇

随着大众对潮玩文化的需求不断增长&#xff0c;市场进行了创新升级&#xff0c;不再局限于传统的销售营销模式&#xff0c;进一步推动行业的发展。目前&#xff0c;扭蛋机的种类越来越丰富&#xff0c;从手办、玩具到各种IP周边等&#xff0c;为市场带来更多新颖的扭蛋商品。销…

Unity 实现数字垂直滚动效果

Unity 实现数字垂直滚动效果 前言项目场景布置Shader代码编写材质球设置代码编写数字图片 前言 遇到一个需要数字垂直滚动模拟老虎机的效果&#xff0c;记录一下。 项目 场景布置 3个Image换上带有RollNumberShader的材质 在RollNumberScript脚本中引用即可 Shader代码编…

记录解决vscode 登录leetcode中遇到的问题

1. 安装完 leetcode 点击sign in to leetcode 点击打开网站登录leetcode&#xff0c;发现网页无法打开。 解决办法&#xff1a;将leetcode.cn.js文件中的leetcode-cn.com路径都改成leetcode.cn 2. 继续点击 sign in to leetcode &#xff0c;选择使用账号登录&#xff0c;始…

设计模式之适配器模式(从多个MQ消息体中,抽取指定字段值场景)

前言 工作到3年左右很大一部分程序员都想提升自己的技术栈&#xff0c;开始尝试去阅读一些源码&#xff0c;例如Spring、Mybaits、Dubbo等&#xff0c;但读着读着发现越来越难懂&#xff0c;一会从这过来一会跑到那去。甚至怀疑自己技术太差&#xff0c;慢慢也就不愿意再触碰这…

万字长文解读深度学习——循环神经网络RNN、LSTM、GRU、Bi-RNN

推荐阅读&#xff1a; 深度学习知识点全面总结 如何从RNN起步&#xff0c;一步一步通俗理解LSTM 深度学习之RNN(循环神经网络) 循环神经网络&#xff08;RNN与LSTM&#xff09; 文章目录 &#x1f33a;深度学习面试八股汇总&#x1f33a;文本特征提取的方法1. 基础方法1.1 词袋…

Qt 使用QTreeView显示并动态的增删改查JSON文件数据

文章目录 效果图概述部分代码总结 效果图 概述 本案例在此开源项目QJsonModel的基础上实现&#xff0c;动态的生成并操作JSON数据&#xff0c;QJsonModel是一个基于QAbstractItemModel的JSON数据模型&#xff0c;它提供了一种简单的方式来将JSON数据可视化&#xff0c;功能简单…

基于Springboot+Vue的游乐园管理系统 (含源码数据库)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 该系统…

漫谈MCU优化:从硬件设计优化到可靠性挑战

1.关于MCU 微控制器&#xff08;Microcontroller Unit, MCU&#xff09;&#xff0c;是以微处理器为基础&#xff0c;加上存储器以及计数器、I2C、UART等外设模块与接口电路整合的单芯片微型计算机。 ▲MCU实物图 MCU拥有性能好、可编程、灵活度高、功耗低等优点&#xff0c;…

【深度学习】— 多输入多输出通道、多通道输入的卷积、多输出通道、1×1 卷积层、汇聚层、多通道汇聚层

【深度学习】— 多输入多输出通道、多通道输入的卷积、多输出通道、11 卷积层、汇聚层、多通道汇聚层 多输入多输出通道多通道输入的卷积示例&#xff1a;多通道的二维互相关运算 多输出通道实现多通道输出的互相关运算 11 卷积层11 卷积的作用 使用全连接层实现 11 卷积小结 …

如何在c++侧编译运行一个aclnn(AOL)算子?

1 AOL算子库 CANN&#xff08;Compute Architecture for Neural Networks&#xff09;提供了算子加速库&#xff08;Ascend Operator Library&#xff0c;简称AOL&#xff09;。该库提供了一系列丰富且深度优化过的高性能算子API&#xff0c;更亲和昇腾AI处理器&#xff0c;调…

IDEA git提交时如何忽略某个文件或文件夹

步骤如下 英文界面操作顺序 打开file——>settings——>Editor——>File Types 中文插件操作顺序 打开 文件——>设置——>编辑器——> 文件类型 安装下面的操作顺序添加想要屏蔽文件类型后缀即可&#xff1a;

《常用深度学习神经网络及其原理与应用场景》

一、总体介绍 一、引言 随着科技的不断发展&#xff0c;深度学习已经成为人工智能领域中最具影响力的技术之一。深度学习神经网络通过模拟人类大脑的神经元结构和工作方式&#xff0c;能够自动学习数据中的特征和模式&#xff0c;从而实现各种复杂的任务&#xff0c;如图像识…

科技革命前沿:救援机器人!

救援机器人主要制作材料 传统刚性材料&#xff1a;传统救援机器人多采用金属等刚性材料制作&#xff0c;以确保其结构强度和稳定性。这些材料在承受较大负载和复杂环境时表现出色&#xff0c;但可能缺乏一定的灵活性。 软体材料&#xff1a;近年来&#xff0c;软体机器人技术…

Ubuntu中以root身份运行Qt创建的项目

Ubuntu中以root身份运行Qt创建的项目 Chapter1 Ubuntu中以root身份运行Qt创建的项目解决方法&#xff1a; Chapter1 Ubuntu中以root身份运行Qt创建的项目 原文链接&#xff1a;https://blog.csdn.net/lhbaba/article/details/124733323 使用Qt开发项目时遇到了一个问题&#…

leetcode25:k个一组链表反转

给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值…

ctfshow-web入门-反序列化(web265-web270)

目录 1、web265 2、web266 3、web267 4、web268 5、web269 6、web270 1、web265 很简单的一个判断&#xff0c;满足 $this->token$this->password; 即可 由于 $ctfshow->tokenmd5(mt_rand()) 会将 token 随机为一个 md5 值&#xff0c;我们使用 & 绕一下&am…

qt QLocale详解

1、概述 QLocale是Qt框架中的一个类&#xff0c;用于处理与本地化相关的操作。它能够方便地实现日期、时间、数字和货币的格式化和解析&#xff0c;支持不同的语言、区域设置和字符集。QLocale提供了一种跨平台的方式来获取当前系统的语言设置&#xff0c;并返回该语言的本地化…

年龄大了,听力一定会下降吗?

随着年龄的增长&#xff0c;听力下降&#xff08;也称为老年性听力损失或感音神经性聋&#xff09;确实是一个常见的现象&#xff0c;但并不是每个人都会经历明显的听力下降。以下是一些影响因素和相关信息&#xff1a; 1. 自然老化过程 •随着年龄的增长&#xff0c;内耳的毛…

Linux SSH私钥认证结合cpolar内网穿透安全高效远程登录指南

文章目录 前言1. Linux 生成SSH秘钥对2. 修改SSH服务配置文件3. 客户端秘钥文件设置4. 本地SSH私钥连接测试5. Linux安装Cpolar工具6. 配置SSHTCP公网地址7. 远程SSH私钥连接测试8. 固定SSH公网地址9. 固定SSH地址测试 前言 开发人员在工作中经常需要远程访问服务器和数据中心…

国产化浪潮下,高科技企业如何选择合适的国产ftp软件方案?

高科技企业在数字化转型和创新发展中&#xff0c;数据资产扮演着越来越重要的角色。在研发过程中产生的实验数据、设计文档、测试结果等&#xff0c;专利、商标、版权之类的创新成果等&#xff0c;随着信息量急剧增加和安全威胁的复杂化&#xff0c;传统的FTP软件已经不能满足这…