java基础之变量,类型的转换,跟着哔站尚硅谷自学笔记。

变量

在这里插入图片描述

  • 变量的介绍以及使用
1.变量的数据类型:
    基本数据类型:48种
    整数:byte short int long 
    浮点数:float double
    字符型:char
    布尔型:boolean
    
    引用数据类型:类 数组 接口 枚举 注解
    
2.概述:在代码运行过程中,值会随着不同的情况而随时发送改变的数据
    
3.作用:一次接收一个数据
    将来定义一个变量,接收一个值,后续可能会根据不同的情况对此值进行修改,此时可以用变量
   
4.定义:
    1) 数据类型 变量名 = 值;
    2) 数据类型 变量名;
    	变量名 = 值;
    3) 连续定义三个相同类型的变量
    	数据类型 变量1,变量2,变量3;
    	变量名1 = 值;
    	变量名2 = 值;
    	变量名3 = 值;
    4) 例如:int i, j, k;
			i = 10;
			j = 20;
			k = 30;

5.数据类型 变量名1 = 值, 变量名2 = 值, 变量名3 = 值;
  比如: int i = 10, j = 20, k = 30;

正确的读法:先看等号右边的,再看等号左边的 -> 将等号右边的数据复制给等号左边的变量,哪怕等号右边有运算,我们都先将右边的运算算出一个值来,最后将右边的值赋值给左边。
    
6.注意:
    1)字符串不属于基本数据类型,属于引用数据类型,用String表示,String是一个类,只不过字符串在定义的时候可以和基本数据类型格式一样。
    
7. floatdouble的区别:
    1float的小数位只有23位二进制,能表示的最大十进制为223次方(8388608),7位数,所以float型代表的小数,小数位能表示7位。
    2double的小数位只有52位二进制,能表示的最大十进制为(4 503 599 627 370 496),是16位数,所以double型代表的小数,小数位能表示出16位。
注意:将来开发不要同float或者double直接参与运算因为直接参与运算会有精度损失问题。    

  • 变量的使用

在这里插入图片描述

在这里插入图片描述

  • 变量的其他用法

在这里插入图片描述

小知识点:转义字符

  1. 将普通字符转成具有特殊含义的字符 n -> \n (变成换行符了)
  2. 将具有特殊含义的字符转换为普通字符 例如在输出路径时E:\path\a -> E:\path\a(把特殊含义的转义符再次转义变成普通符号)
  • 变量使用时要注意的事项
  1. 不能使用未初始化的变量(未定义的变量不可用)。
  2. 变量名的定义不能相同。
  3. 不同作用域中的数据尽量不要随意访问,在小作用域中能直接访问大作用域内的变量,而大作用域的变量不可访问小作用域中的变量。

标识符

1. 概念:给类,方法,变量取的名字
2. 注意:
    1)硬性规定
    	标识符可包含“英文字母”,"数字""$和_"
    	标识符不能以数字开头 int i1 = 100(正确) int 1i = 100(错误)
    	标识符不能是关键字
    
	2)软性建议
    	给类名取名字:遵循大驼峰方式 -> 每个单词首字母大写
    	给方法和变量取名字:遵循小驼峰式 -> 从第二个单词开始首字母大写
    	见名知意

数据类型转换

  • 什么时候发生类型转换:

    1. 等号左右两边类型不一致
    2. 不同类型的数据做运算
  • 分类:

    1. 自动类型转换

      将取值范围小的数据类型赋值给取值范围大的数据类型 -> 小自动转大

      取值范围小的数据类型和取值范围大的数据类型做运算 -> 小自动转大

    2. 强制数据类型转换

      当讲取值范围大的数据类型赋值给取值范围小的数据类型 -> 需要强转

  • 基本类型中按照取值范围从小到大排序:

    byte,short,char -> int -> long -> float -> double

强制类型转换

在这里插入图片描述

注意事项:

1. 不要随意强转,精度会损失。
2. 数据会溢出

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

gptpdf:使用大模型(如 GPT-4o)将 PDF 解析为 markdown。

今天给大家分享一个开源的项目, 使用视觉大语言模型(如 GPT-4o)将 PDF 解析为 markdown。 方法非常简单(只有293行代码),但几乎可以完美地解析排版、数学公式、表格、图片、图表等。 使用 GeneralAgent lib 与 OpenAI API 交互。…

C++笔试强训4

文章目录 一、选择题1-5题6-10题 二、编程题题目一题目二 一、选择题 1-5题 %o就是输出八进制的无符号数,0123,,以0开头,本来就是八进制,所以输出为123,123是十进制,转化为八进制就是173. 故选…

双向带头循环链表

一、概念 何为双向:此链表每一个节点的指针域由两部分组成,一个指针指向下一个节点,另一个指针指向上一个节点,并且两头的节点也是如此,头节点的下一个节点是尾节点,尾节点的上一个节点是头节点&#xff1b…

C++ — 引用浅谈

引言 在C的语法规则中,定义了一种新的方法,叫做引用。在学习的初期,引用的作用很类似于指针(但需要注意引用不等于指针),引⽤不是新定义⼀个变量,⽽是给已存在变量取了⼀个别名。 在上边…

Cesium--获取当前相机中心与地面的射线焦点

本文记录获取当前相机中心与地面的射线焦点的方法,可用于视角缩放过程中,控制视角自动平滑切换到二维等场景: 方法一定是视角中心能与地面有交集,如果对着地平线或对着天空肯定是没效果的。直接放代码: //调整相机到正…

链接追踪系列-04.linux服务器docker安装elk

[rootVM-24-17-centos ~]# cat /proc/sys/vm/max_map_count 65530 [rootVM-24-17-centos ~]# sysctl -w vm.max_map_count262144 vm.max_map_count 262144 #先创建出相应目录:/opt/dockerV/es/…docker run -e ES_JAVA_OPTS"-Xms512m -Xmx512m" -d -p 92…

单目3D和bev综述

文章目录 SOTA2D 检测单目3d检测3d bev cam范式1 Transformer attention is all you need 20172 ViT vision transformer ICLR 2021google3 swin transformer 2021 ICCV bestpaper MS4 DETR 2020 decoder set match4 Deformabel DETR (deformabel convolution&#…

c++包管理器

conan conan search,查看网络库 conan profile detect,生成缓存信息conan new cmake_exe/cmake_lib,创建cmakelists.txtconan install .,执行Conanfile.txt中的配置,生成相关的bat文件 项目中配置Conanfile.txt(或者…

k8s核心操作_存储抽象_K8S中的持久卷与持久卷申请_PV/PVC理解与搭建_解决联动删除动态存储管理---分布式云原生部署架构搭建029

我们之前使用nfs搭建了一个存储系统,并且使用nfs的自动同步,让,不同节点上部署的应用,都可以,访问到自己的配置文件,并且 当pod宕机,在其他机器上启动,也可以访问到配置文件,但是这里依然有问题. 1.首先对于nfs上的文件夹,现在是我们自己创建的,有很多程序会自动创建很多文件夹…

知识图谱与LLMs:实时图分析(通过其关系的上下文理解数据点)

大型语言模型 (LLM) 极大地改变了普通人获取数据的方式。不到一年前,访问公司数据需要具备技术技能,包括熟练掌握各种仪表板工具,甚至深入研究数据库查询语言的复杂性。然而,随着 ChatGPT 等 LLM 的兴起,随着所谓的检索…

贪心算法案例

1.买卖股票的最佳时机 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔…

贝塞尔曲线基础

贝塞尔曲线于1962年由法国工程师皮埃尔贝塞尔(Pierre Bzier)所广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由Paul de Casteljau于1959年运用de Casteljau演算法开发,以稳定数值的方法求出贝兹曲线。 贝塞尔…

基于ARM Cortex-M3单片机研发的国产指纹芯片 - P1032BF1

智能指纹锁的核心部件:主板、离合器、指纹采集器、密码技术、微处理器(CPU)、智能应急钥匙。作为指纹锁来说,重要的应该是指纹芯片。指纹锁是通过电子部件及机械部件的精密组合而生产出的安全产品。指纹锁的本质无非是安全、便捷、…

配置Redis时yml的格式导致报错

报错如下 java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98) at org.springframework.test.context.su…

C++面试问题

C基础 什么是野指针? 指向未分配或已释放内存的指针。比如未初始化、delete后未指向空、保存了局部变量的地址 怎么解决野指针问题? 使用智能指针释放后置空指针初始化避免返回局部变量的地址 C空类会创造那些函数? 默认构造析构函数拷…

【Linux】重定向,dup2

2.重定向 2.1.输出重定向 1.输入重定项。 我们之前学习过的输出重定向就是,将我们本应该输出到显示器上的数据重定向输出到另一个文件中。那他的原理是什么了? 例如: 如果我们想让本应该输出到“显示器文件”的数据输出到log.txt文件当中&…

Spring webflux基础核心技术

一、 用操作符转换响应式流 1 、 映射响应式流元素 转换序列的最自然方式是将每个元素映射到一个新值。 Flux 和 Mono 给出了 map 操作符&#xff0c;具有 map(Function<T&#xff0c;R>) 签名的方法可用于逐个处理元素。 当操作符将元素的类型从 T 转变为 R 时&#xf…

Linux虚拟机扩展磁盘空间

文章目录 在VM上进行扩展新的磁盘空间进入虚拟机将扩展的磁盘空间分配给对应的分区 VM 下的Linux虚拟机提示磁盘空间不足&#xff0c;需要对其进行磁盘扩容&#xff0c;主要有以下两步&#xff1a; 在VM上进行扩展新的磁盘空间 先关闭虚拟机在VM的虚拟机设置处进行硬盘扩展 …

电脑关机被阻止

1. winR输入regedit进入注册表 2. 选择HKEY_USERS-》.DEFAULT-》Control Panel-》Desktop 3. 右键DeskTop新建字符串值&#xff0c;命名为AutoEndTasks&#xff0c;数值设置为1

C++_入门

C入门 C发展历程 C的起源可以追溯到1979年&#xff0c;当时Bjarne Stroustrup(本贾尼斯特劳斯特卢普&#xff0c;这个翻译的名字不同的地⽅可能有差异)在贝尔实验室从事计算机科学和软件⼯程的研究工作。面对项目中复杂的软件开发任务&#xff0c;特别是模拟和操作系统的开发…