JAVA学习笔记——第四章 运算符

这篇具有很好参考价值的文章主要介绍了JAVA学习笔记——第四章 运算符。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🔥博客主页: A_SHOWY
🎥系列专栏:力扣刷题总结录 数据结构  云计算  数字图像处理  力扣每日一题_ 运算符是一种特殊的符号,用于表示数据的运算、赋值和比较

算数运算符

取模 %的本质: a - (int)a / b * b//当a是小数时

public class Hello {
    public static void main(String[] args) {
        System.out.println(10 % 3);//1
        System.out.println(-10 % 3);//-1
        System.out.println(10 % -3);//1
        System.out.println(-10 % -3);//-1
    }
}

自增

独立语句使用时,++i和i++没有区别的。但是如果作为表达式使用,++i先自增后赋值,++i先赋值后自增。和c++没有区别。注意自增运算符的优先级大于算数运算符。

面试题1:JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

 答:其主要过程为按照规则使用临时变量temp,先将i存到临时变量temp中,再对i进行自增,再把temp赋值给i,所以最后的值为1。

面试题2

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

答: 其主要过程为按照规则先将i自增,然后 将存到临时变量temp中,再将temp存到i中,最后i的值为2。

关系运算符

关系运算符的结果都是boolean型,要么true要么false ,关系运算符组成的表达式称为关系表达式。       

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

逻辑运算符

用于连接多个条件,最终结果也是boolean值。

分为两组:第一组短路与&& 短路或|| 取反!

第二组与& 逻辑或| 逻辑异或 ^

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

  •  短路与&& 和逻辑与&相比效果相同,但是短路与的效率更高因为在判断第一个为假时,短路与直接判定为false,而逻辑与不管第一个判断如何都对两个进行全部的判断。
  • 短路或和逻辑或的思想是类似的,也是遵循这个“短路”的特性,第一个条件为真后边就不判断了。
  • 逻辑异或^,两边一真一假不同的才为真。总结为相同为真不同为假

赋值运算符

+= -= *= /=  和c++一模一样 

复合赋值运算符会进行类型的转换

byte b = 3;
b += 2;//b = byte(b + 2);等价,底层有一个类型转换

三元运算符

条件表达式?表达式1:表达式2

  1. 如果条件表达式为真,运算后的结果是表达式是1,否则是2
  2. 表达式1和表达式2为可以赋给接收变量的类型(或可以自动转换)
    int c = a > b ? 1.1 : 2.6;//错误的
  3. 它的本质是if else 语句

  4. 例子:三个数,寻找最大值,用一句语句

    int max = (n1 > n2 ? n1 : n2) > n3 ? (n1 > n2 ? n1 : n2) : n3;

关于运算符优先级

  1. 只有单目运算符和赋值运算符是从右向左运算
  2. 大致分为(1)(),{}等(2)单目运算:++ -- ^ !(3)算数运算符:+ -(4)位移运算符:>> <<<(5)比较运算符(6)逻辑运算符(7)三元运算符(8)赋值运算符 

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

标识符的命名规格和规范

规则:

  1. 由26个英文字母大小写,0-9或$组成
  2. 数字不能开头,不能用关键字和保留字,但是可以包含
  3. 严格区分大小写,长度无限制
  4. 标识符不能包含空格

规范:

  1. 包名多单词组成时所有字母小写
  2. 类名和接口名所有单词的首字母大写XxxYyyZzz(大驼峰)
  3. 变量名和方法名xxxYyyZzz(小驼峰) 
  4. 常量名:所有字母都大写

 例子:JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

import java.util.Scanner;//引入scanner类所在的包

public class Hello {
    public static void main(String[] args) {
        //创建Scanner类的对象,scanner就是Scanner类的对象
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入姓名");
        String name = scanner.next();
        System.out.println("请输入年龄");
        int age = scanner.nextInt();
        System.out.println("请输入成绩");
        double score = scanner.nextDouble();
        System.out.println("name: " + name + "\t" + "age: " +age + "\t" + "score: " + score);
    }
}

 进制

  1. 二进制:只用0 和1 来表示一个数   开头0b/0B
  2. 十进制
  3. 八进制:以数字0开头
  4. 十六进制:0-9 A-F来表示数,用0x打头

进制的转换

第一组:其他进制转十进制   

二进制转十进制  例:0b1011:1 * 2的零次方 + 1 * 2的一次方 + 1 * 2的三次方 = 11 

八进制转十进制  例:0234   : 4 * 8的零次方 + 3 * 8的一次方 + 2 * 8的二次方 = 156

十六进制转十进制 例:0x23A:10 * 16的零次方 + 3 * 16的一次方 + 2 * 16的二次方 = 570 

第二组:十进制 转成其他进制

十进制转二进制:例: 34

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

十进制转八进制:例:131(同理)得:0203

十进制转十六进制:例:237(同理)得:0xED

第三组:不同进制间的转换

二进制转八进制和16进制:0b11010101 

转八进制:每三位一组,转成对应的八进制数0325

转十六进制:每四位一组,转成对应的十六进制数 0xD5

八进制转二进制:八进制每一位数,转成一个对应的3位二进制数 例:0237

02(010)3(011)7(111) ——> 0b10011111

十六进制转二进制:十六进制每一位数转成4位的二进制数 例:0x23b

0x2(0010)3(0011)b(1011)——> 0b1000111011

原码 反码 补码

对于有符号的数,有8个原则:

  1. 二进制的最高位是符号位,0代表正数,1代表负数
  2. 正数的原码、反码、补码都是一样的
  3. 负数的反码是符号位不变,其他位取反(0变1 1变0)
  4. 负数的补码是反码+1 ,负数的反码等于补码-1
  5. 0的反码补码都是0
  6. java的数都是有符号的数
  7. 计算机运算时候,都是以补码的方式进行运算的
  8. 看运算结果的时候要看它的原码(运算看补码,结果看原码)

位运算符:

java 中有7个

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

例:

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言(很重要)

>> 算数右移:低位溢出,符号位不变

<<算数左移:低位补0,符号位不变 

>>>逻辑右移:低位溢出,高位补0,没有<<<符号

JAVA学习笔记——第四章 运算符,JAVA零基础开始,java,开发语言

练习:

int i = 66;
System.out.println(i++ + i);//133,i++ 被用在表达式中,它的值是 66(使用当前值,然后增加 1,但在这个表达式中使用的是当前值)。
int i = 66;
System.out.println(++i + i);//134

 文章来源地址https://www.toymoban.com/news/detail-807974.html

到了这里,关于JAVA学习笔记——第四章 运算符的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【UnityShader入门精要学习笔记】第四章(3)矩阵的性质

    本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 + 个人批注 项目源码 一堆新手会犯的错误 潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 (该系列笔记中大多数都会复习前文的知识,特别是前文知识非

    2024年02月02日
    浏览(44)
  • 【UnityShader入门精要学习笔记】第四章(1)坐标系

    本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 + 个人批注 项目源码 一堆新手会犯的错误 潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 (该系列笔记中大多数都会复习前文的知识,特别是前文知识非

    2024年01月20日
    浏览(43)
  • 【UnityShader入门精要学习笔记】第四章(4)矩阵的几何意义

    本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 + 个人批注 项目源码 一堆新手会犯的错误 潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 (该系列笔记中大多数都会复习前文的知识,特别是前文知识非

    2024年02月01日
    浏览(45)
  • ElasticSearch学习笔记-第四章 ES分片原理以及读写流程详解

    在学习ES分片原理以及读写流程之前,需要先学习一些ES的核心概念以及ES集群环境的相关知识 4.1 ES核心概念 4.1.1 索引 索引(Index)相当于MySQL中的数据库,一个索引就是一个拥有几分相似特征的文档的集合。 4.1.2 类型 类型(Type)相当于MySQL中的表,一个类型就是索引的一个逻辑上

    2024年02月06日
    浏览(62)
  • 【UnityShader入门精要学习笔记】第四章(6)法线变换、内置变量以及本章答疑

    本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 + 个人批注 项目源码 一堆新手会犯的错误 潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 (该系列笔记中大多数都会复习前文的知识,特别是前文知识非

    2024年01月16日
    浏览(46)
  • 【计算机网络】学习笔记:第四章 网络层(七千字详细配图)【王道考研】

    基于本人观看学习b站王道计算机网络课程所做的笔记,不做任何获利 仅进行交流分享 特此鸣谢王道考研 若有侵权请联系,立删 如果本篇笔记帮助到了你,还请点赞 关注 支持一下 ♡𖥦)!! 主页专栏有更多,如有疑问欢迎大家指正讨论,共同进步! 给大家跳段街舞感谢支持

    2024年02月01日
    浏览(50)
  • 王道计网 第四章笔记

    生活在网络层的“工人”是路由器,他负责各种异构网络的连接,但是因为他只生活在前三层所以从网络层之上的东西他不能管理,所以网路层之上的数据对于路由器来说必须是相同的、透明的。 常见的网络层协议有IP 和 ICMP TCP IP传输层协议 FTP应用层协议 一句话区分IP和M

    2024年02月14日
    浏览(50)
  • python笔记:第四章使用字典

    说白了就是键值对的映射关系 不会丢失数据本身关联的结构,但不关注数据的顺序 是一种可变类型 键的类型:字典的键可以是任何不可变的类型,如浮点数,字符串,元组 可以从其他映射或键值对创建字典 将字符串格式设置功能用于字典 使用format_map将两者结合起来 就地

    2024年02月13日
    浏览(64)
  • 操作系统-笔记-第四章-文件管理

    一、第一章——操作系统的概念 二、第二章——【进程】 二、第二章——【线程】​编辑 二、第二章——【进程调度】 二、第二章——【进程同步与互斥】 二、第二章——【锁】 三、第三章——内存管理 四、第四章——文件管理 五、第五章——输入输出管理 🚀 学习心

    2024年02月11日
    浏览(71)
  • 计算机网络-笔记-第四章-网络层

    一、第一章——计算机网络概述 二、第二章——物理层 三、第三章——数据链路层 四、第四章——网络层 五、第五章——运输层 六、第六章——应用层 目录 ​​​​​​​ 四、第四章——网络层 1、网络层概述 (1)虚电路服务——面向连接 (2)虚电路服务——无连接

    2024年02月11日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包