初学Java(三),详解基本数据类型、标识符和运算符以及原码、反码、补码之间的关系

本文详细介绍了Java中的基本数据类型、标识符命名规则、运算符(包括算术、关系和逻辑运算)、以及原码、反码和补码的概念及其在数值运算中的应用,同时涵盖了运算符优先级和一些运算符的扩展使用。
摘要由CSDN通过智能技术生成

目录

基本数据类型

标识符

运算符

原码,反码,补码


基本数据类型

  • Java语言的数据类型分为:基本数据类型,引用数据类型

  • 基本数据类型的四类八种

  • 整数和小数取值范围大小关系:double float long int>short byte

  • long类型变量:需要加入L标识(大小写都可以) float类型变量:需要加入F标识(大小写都可以)


标识符

就是给类,方法,变量等起的名字

标识符命名规则

硬性要求:

  • 由数字、字母、下划线(_)和美元符($)组成

  • 不能以数字开头

  • 不能是关键字

  • 区分大小写

软性建议:

  • 小驼峰命名法:方法、变量 规范1:标识符是一个单词的时候,全部小写 范例1:name 规范2:标识符由多个单词组成的时候,第一个单词首字母小写,其他单词首字母大写 范例2:firstName

  • 大驼峰命名法

    规范1:标识符是一个单词的时候,首字母大写

范例1:Student 规范2:标识符由多个单词组成的时候,每个单词 的首字母大写 范例2:GoodStudent


运算符

对字面量或者变量进行操作的符号

表达式

用运算符把字面量或者变量连接起来,符合java语法的式子就可以称为表达式。不同运算符连接的表达式体现的是不同类型的表达式。

  • 算术运算符

    • 加、减、乘、除、取余

    • 整数参与运算,结果只能得到整数

    • 小数参与运算,结果可能不精确

    • 数字相加

      • 隐式转换(自动类型提升) 把一个取值范围小的数值,转成取值范围大的数据

      • 数据类型不一样,不能进行计算,需要转成一样的才可以进行计算。

      • 取值范围小的,和取值范围大的进行运算,小的会先提升为大的,再进行运算

      • byte short char三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算

      • 取值范围排序: byte<short<int<long<float<double

      • 强制转换 如果把一个取值范围大的数值,赋值给取值范围小的变量。 是不允许直接赋值的。如果一定要这么做就需要加入强制转换

      格式:目标数据类型变量名=(目标数据类型)被强转的数据;

    • 字符串相加

      • 字符串的”"+”操作 当“+”操作中出现字符串时,这个”+”是字符串连接符,而不是算术运算符了。会将前后的数据进行拼接,并产生一个新的字符串。

      • 连续进行”+"操作时,从左到右逐个执行。

    • 字符相加

      • 当字符+字符或者字符+数字时,会把字符通过ASCI码表查询到对应的数字再进行计算。

    • 注意事项: /和%的区别:两个数据做除法,/取结果的商,%取结果的余数。 整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。

  • 自增自减运算符

    符号作用说明
    ++变量的值加一
    --变量的值减一

    注意事项: ++和~既可以放在变量的前边,也可以放在变量的后边

  • 赋值运算符

符号作用说明
=赋值int a=10,将10赋值给变量a
+=加后赋值a+=b,将a+b的值给a
-=减后赋值a-=b,将a-b的值给a
*=乘后赋值a*=b,将a×b的值给a
/=除后赋值a/=b,将a/b的商给a
%=取余后赋值a%=b,将a➗b的余数给a

在运算中扩展的赋值运算符隐含了强制类型转换

  • 关系运算符(比较运算符)

符号说明
==a==b,判断a和b的值是否相等,成立为true,不成立为false
!=a=b,判断a和b的值是否不相等,成立为true,不成立为false
>a>b,判断a是否大于b,成立为true,不成立为false
>=a>=b,判断a是否大于等于b,成立为true,不成立为false
<a<b,判断a是否小于b,成立为true,不成立为false
<=a<=b,判断a是否小于等于b,成立为true,不成立为false

注意事项:关系运算符的结果都是boolean类型,要么是true,要么是false。 千万不要把“==”误写成“=”。

  • 逻辑运算符

符号作用说明
&逻辑与(且)并且,两边都为真,结果才是真
&&短路与具有短路效果,第一个条件不符合就不再判断第二个
|逻辑或或者,两边都为假,结果才是假
||短路或具有短路效果,第一个条件符合就不再判断第二个
^逻辑异或相同为false,不同为true
!逻辑非取反
  • 三元运算符

格式:关系表达式?表达式1:表达式2;

关系表达式为真,执行表达式1,否则执行表达式2

 Boolean result = (x == 6 || y == 6 || z % 6 == 0) ? true: false;
         System.out.println(result);
  • 运算符优先级

小括号优先所有


原码,反码,补码

  • 原码

    十进制数据的二进制表现形式,最左边是符号位,0为正,1为负

    利用原码对正数进行计算是不会有问题的。 但是如果是负数计算,结果就出错,实际运算的结果,跟我们预期的结果是相反的。

  • 反码(解决原码不能计算负数)

    正数的补码反码是其本身,负数的反码是符号位保持不变,其余位取反

  • 补码(解决跨0 问题)

    正数的补码是其本身,负数的补码是在其反码的基础上+1

  • 运算符在补码中的规则
运算符含义运算规则
&逻辑与0为false,1为true
|逻辑或0为false,1为true
<<左移向左移动两个bit,低位补两个0(相当于两次×2)
>>右移向右移动两个bit,高位补两个0(相当于两次÷2)
>>>无符号右移向右移动两个bit,高位补两个0(无视正负)
  • 29
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值