首页 > 其他分享 >2.常量 变量 类型转换 进制转换

2.常量 变量 类型转换 进制转换

时间:2024-09-05 19:47:20浏览次数:8  
标签:类型转换 进制 常量 数据类型 变量名 取值 变量

常量 变量 类型转换 进制转换

1.常量的使用

2.变量的使用

3.会强制类型转换

一、常量

(一)常量的分类

1.概述:在代码的运行过程中,其值不会发生改变的数据

2.分类:

整数常量:所有整数

小数常量:所有带小数点的

字符常量:带单引号,有且只能有一个内容

字符串常量:带双引号

布尔常量:true flase

空常量:null 代表数据不存在

(二)常量的使用

(三)常量之间的运算

二、变量

(一)变量的数据类型介绍

1.基本数据类型:

整型:byte short int long

浮点型:float double

字符型:char

布尔型:boolean

2.引用数据类型:类 数组 接口 枚举 注解

(二)变量的定义

1.概述:在代码运行过程中,值会随着不同的情况而随时发生改变的数据

2.作用:一次接受一个数据,将来定义一个变量,接受一个值,后续可能会根据不 同的情况对此值进行修改

3.定义:

(1)数据类型 变量名 = 值;

(2)数据类型 变量名;

变量名 = 值;

  1. 连续定义三个类型相同变量:

数据类型 变量名1,变量名2,变量名3;

变量名1 = 值;

变量名2 = 值;

变量名3 = 值;

正确读法:先看等号右边的,再看等号左边的

4.注意:字符串不属于基本数据类型,属于引用数据类型,属于String类,

定义的时候可以和基本数据类型格式一样

5.float和double区别:

(1)Float的小数位只有23位二进制,能表示的最大十进制为2的23次方(8388608),是7位数,所以float型代表的小数,小数位能表示7位;

(2)Double的小数位只有52位二进制,能表示的最大十进制为(4 503 599 627 370 496),是16位数,所以double型代表的小数,小数位能表示出16位

6.切记:将来开发不要用float或者double直接参与运算,因为直接参与运算

会有精度损失问题

(三)变量的使用

定义long型的变量后面加个L

定义float型的变量后面加个F

转义字符:\

换行符:\n

制表符:\t相当于tab键

用String表示一个路径:String path = “E:\\java1\\java”;

注意:

(1)变量不初始化(第一次赋值)不能直接使用

(2)在同一个作用域(一对大括号里)中不能定义重名的变量

(3)不同作用域中的数据尽量不要随意互相访问

在小作用域里面可以访问大作用域的变量,反之不能

三、标识符

1.概述:咱们给类、方法、变量取的名字

2.注意:

(1)硬性规定(必须遵守)

标识符可以包含“英文字母”,“数字”,“$和_”

标识符不能以数字开头

标识符不能是关键字

(2)软性规定(建议遵守)

给类取名:大驼峰式

给方法和变量取名:小驼峰式

见名知意

四、数据类型转换

(一)发生类型转换的条件

1.什么时候发生类型转换:

(1)等号两边类型不过一致

(2)不同类型的数据做运算

2.分类:

(1)自动类型转换

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

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

(2)强制类型转换

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

3.基本数据类型中按照取值范围从小到大排序:

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

(二)自动化类型转换

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

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

(三)强制类型转换

1.将取值范围大的数据类型赋值给取值范围小的数据类型

取值范围小的数据类型 变量名 = 取值范围大的数据类型 -> 需要强转

2.怎么强转:

取值范围小的数据类型 变量名 = (取值范围小的数据类型)取值范围大的数据 类型

int i1 = (int)2.5;

(四)强制类型转换的注意事项

1.不要随意写成强转的格式,因为会有精度损失问题以及数据溢出现象,除非没有办法

2.byte,short定义的时候如果等号右边是整数常量,如果不超过bbyte和short的范围,不需要我们自己强转,jvm虚拟机自动转型

但是如果有变量参与,需要手动转

3.char类型数据如果参与运算,会自动提升为int型,如果char类型的字符提升为int型,会去ASCII码表,unicode码表查询对应的int值

五、进制转换_位运算

(一)十进制和二进制之间的转换

1.辗转相除法 -> 循环除以二,取余数

2.上下相乘再相加

二进制转成八进制

将二进制数分开(3位为一组)

二进制转成十六进制

将二进制数分组(4位为一组)

左移和右移

1.左移:<<

运算规则:左移几位就相当于乘以2的几次方

注意:当左移的位数n超过该数据类型的总位数时,相当于左移(n-总位数) 位

2<<2 结果等于8

快速算法:2*(2的2次方)

2.右移:>>

运算规则:类似于除以2的n次,如果不能整除,向下取整

9>>2 等于2

快速算法:9除以(2的2次方)

(五)位运算符

1.符号的介绍:

(1)&(与) -> 有假则假

(2)|(或) -> 有真则真

(3)~(非) -> 取反

(4)^(异或) -> 符号前后结果一样为false,不一样为true

true ^ true -> false

false ^ false -> false

true ^ false -> true

false ^ true -> true

2. 1代表true 0代表false

3.我们要知道计算机在存储数据的时候都是存储数据的补码,计算也是用的数据 的补码,但是我们最终看到的结果是原码换算出来的

原码 反码 补码

4.正数二进制最高位为0;负数二进制最高位为1

5.如果是正数 原码 反码 补码一致

如果是负数,反码是原码的基础上最高位不变,剩下的0和1互换

补码是在反码的基础上+1

运算符的优先级

1.表达式不要太复杂

2.先算的使用(),如果想让哪个表达式先运行,就加小括号

标签:类型转换,进制,常量,数据类型,变量名,取值,变量
From: https://www.cnblogs.com/swh666/p/18394720

相关文章

  • 断言assert,异常,类型转换
    assert作用:等同于Qdebug(val),判断程序是否得到自己想要的结果可以通过#defindeNDEBUG一键屏蔽接受一个条件表达式作为参数。如果该条件表达式的值为假(即为0或者布尔意义上的false),则assert会触发一个错误,通常会导致程序终止,并打印出错误信息和发生错误的位置#include<ios......
  • 二季度财报背后:美团的变化与常量
    上周美团公布了2024年Q2财报,截止6月30日今年二季度美团总营收823亿人民币,高于市场预估的804亿,其中核心本地商业收入606.8亿,也高于市场预估的599亿。一句话,可圈可点,超预期。稳健增长背后,有“天时”,是季节因素使然,但更多的还是美团过去一系列组织架构和运营策略调整的水到渠成。跳出......
  • 力扣刷题--1837.K进制表示下的各位数字总和【简单】
    题目描述......
  • 十六进制转RGB ---颜色-color
    ```//十六进制转RGBfunctionhexToRgb(hex:string){constresult=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);returnresult?[parseInt(result[1],16),parseInt(result[2],16),parseInt(result[3],16),]:null;}functionadjustColor(color:......
  • Monocle:一款基于LLM的二进制文件自然语言搜索工具
    关于MonocleMonocle是一款基于LLM的二进制文件自然语言搜索工具,该工具由LLM驱动,用于对已编译的目标二进制文件执行自然语言搜索,并查找加密代码、密码字符串和安全缺陷漏等。功能介绍Monocle是一款由大型语言模型支持的工具,用于对已编译的目标二进制文件执行自然语言搜索......
  • 强制类型转换(也称为显式类型转换)
    1.是什么             强制类型转换(也称为显式类型转换)在Java中是一种编程技术,它允许程序员将一种数据类型的变量转换为另一种数据类型的变量,即使这两种类型在Java的类型层次结构中不是直接兼容的。强制类型转换通常用于以下几种情况:1.将一个较大数据类型的......
  • mysql实用系列:字段类型转换该怎么去转
    在MySQL中,可以使用内置的函数来转换字段类型。以下是一些常用的类型转换函数:CAST(expressionAStype):用于将一个表达式转换为指定的数据类型。CONVERT(expression,type):与CAST类似,但语法略有不同以下是一些具体类型的转换示例:将字符串转换为整数:CAST(column_nameAS......
  • 第四届先进制造技术与电子信息国际学术会议(AMTEI 2024)
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus9月20-22日重庆三、大会介绍由深圳技术大学集成电路与光电芯片学院、中南......
  • 南沙信奥赛老师解一本通题: 1413:确定进制
    ​题目描述】  【输入】一行,包含三个整数p、q、r。p、q、r的所有位都是数字,并且1≤p、q、r≤1,000,000。【输出】一个整数:即使得p×q=r成立的最小的B。如果没有合适的B,则输出0。【输入样例】6942【输出样例】13 #include<bits/stdc++.h>usingnam......
  • 常量指针与指针常量
    1.常量指针当const修饰指针时,我们称其为常量指针特点:指针指向地址可以改,指针指向的值不可更改语法:const数据类型*指针变量名记忆方法:常量指针为常量的指针,重点在常量上,常量为不可更改的值,但地址可改例子inta=10;intb=10;constint*p=&a;//指针指向的值不......