kuangshenshuo-基础-Java运算符

狂神说java学习笔记---Java方法详解 Java方法详解 何谓方法 方法的定义及调用 方法的重载 命令行传参 可变参数 递归 何谓方法? System.out.println(),那么它是什么呢? //System"类".out“输出对象”.println()“方法” Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就 阅读详情

Java 运算符

1. 算术运算符

  • +, -, *, /, %, ++, - -

  • %:取余,也叫模运算

        long a = 123123123123123L;
        int b = 123;
        short c = 10;
        byte d = 8;

        //如果有一个数是long/double,那结果一定是long/double
        System.out.println(a+b+c+d); //123123123123264 long
        System.out.println(b+c+d);   //141 int
        System.out.println(c+d);     //18 int
  • ++ 和 - - :放在变量后面(先赋值,再自增);放在前面(先自增,再赋值)。
        int a = 3;

        int b = a++;  //执行完这行代码后,先给b赋值,再自增
        //a = a + 1
        System.out.println(a);  //4
        //a = a + 1
        int c = ++a; //执行完这行代码前,先给a自增,再给c赋值

        System.out.println(a); //5
        System.out.println(b); //3
        System.out.println(c); //5

        //幂运算 2^3 = 2*2*2 =8 很多运算,会使用一些工具类来操作!
        double pow = Math.pow(2,3);
        System.out.println(pow); //8.0

2. 赋值运算符

  • =

3. 关系运算符

  • >, <, >=, <=, ==, !=, Instanceof
  • 返回的结果是布尔值,即false/true。

4. 逻辑运算符

  • &&, ||, ! (与、或、非)
  • 短路运算
        boolean a = true;
        boolean b = false;

        System.out.println("a && b: " + (a && b));  //逻辑与运算,两个变量都为真,结果才为true
        System.out.println("a || b:" + (a || b));   //逻辑或运算,若有一个为真,则结果为true
        System.out.println("!(a && b):" + !(a && b)); //逻辑非运算,如果是真,则变为假,反之同理

        //短路运算
        int c = 5;
        boolean d = (c<4)&&(c++<4);
        System.out.println(c); //不执行c++<4,因为c<4是false
        System.out.println(d);

5. 位运算符

  • &, |, ^, ~, >>, <<, >>>

  • &:相同为1,否则为0;

  • |:有一个是1则为1,否则为0;

  • ^ : 取反,相同为0,否则为1

  • ① << 左移 : *2

  • ② >>右移 :/2

    ​ A = 0011 1100
    ​ B = 0000 1101

    ​ A & B = 0000 1100
    ​ A | B = 0011 1101
    ​ A ^ B = 0011 0001 //取反 相同为0 否则为1
    ​ ~B = 1111 0010

    0000 0000 0
    0000 0001 1
    0000 0010 2
    0000 0011 3
    0000 0100 4
    0000 0101 5
    0000 0110 6
    0000 0111 7
    0000 1000 8
    0000 1001 9
    ···
    0001 0000 16

 		/*
 		2*8 = 16 怎么运算最快  2 * 2 * 2 * 2
        效率极高  <<  左移 *2   >>  右移 /2
         */
        System.out.println(2<<3); //16

6. 条件运算符

  • ? : (三元运算符)
  • x ? y : z 如果x == true, 则结果为y, 否则为z
  • if

7. 扩展赋值运算符

  • *+=, -=, =, /=
  • 偷懒运算符
        int a = 10;
        int b = 20;
        a += b; // a = a + b
        a -= b; // a = a - b
        System.out.println(a); //30

        //字符串连接符 + , 有一个是String类型,会把另一个也变成String类型
        System.out.println("" + a+b); // 1020
        System.out.println(a+b+ ""); //30

8. 优先级

  • ()
使用Power Apps实现SharePoint Online列表的下拉菜单的级联选择 在SharePoint列表中添加数据的时候,下拉菜单的级联选择一直是一个非常实用的功能,尤其是有很多数据的情况,级联选择可以根据上一层的选择,自动过滤下一层的选择,方便用户查找和选择准确的信息。一个最常用的情景是选择供应商的地区和国家,例如有三个列表,一个是供应商所在的大洲,一个是国家,一个是供应商。当用户选择州的时候,会自动列出属于这个州的国家。避免用户迷失在大量的数据中。 这里展示一下如何在... 阅读详情

相关推荐

钢结构焊接连接工艺

钢结构焊接连接工艺

wwdoffice950426的博客 40

狂神说Java--Java学习笔记(合集)

笔记参考来源狂神说Java视频https://www.bilibili.com/video/BV12J41137hu 本篇笔记有点长,可以根据目录定位,建议配合视频学习。 预科 什么是计算机 名称:Computer,全称电子计算机,俗称电脑。 定义:能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 组成:由硬件和软件组成。 形式:常见显示有台式计算机、笔记本计算机、大型计算机等。 应用:科学计算、数据处理、自动控制、计算机辅助设计、人工智能、网络等领域。 硬件及冯诺依曼结构 计算机硬件 组

m0_67392409的博客 3420

USB Power Delivery Rev 3.1(V1.0) +Rev 2.0(V1.3) 20210602.zip.7z

USB Power Delivery Rev 3.1(V1.0) +Rev 2.0(V1.3) 20210602.zip.7z

B站---【狂神说JavaJavaWeb入门到实战---笔记

JavaWebJava Web 1、基本概念web开发: ·web,网页的意思,www.baidu.com· 静态web 。html,sss 。提供给所有人看的数据始终不会发生变化! 动态web 。淘宝,几乎是所有的网站; 。提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同! 。技术栈:Servlet/ISP,ASP,PHP ...

bell_love的博客 19万+

狂神说Java全栈学习路线

很多同学学习Java苦于没有自己的完整学习步骤,在这里,秦老师给大家奉上一份完整的学习计划~干货满满,关注收藏转发呀!不胜感激!一、Java基础二、JavaWeb三、SSM框架四、Lin...

狂神说 6万+

kuangshenshuo-Java基本语法

Java基本语法 一、 注释 注释不会被执行; 书写注释是一个非常好的习惯; 平时写代码一定要注意规范。 Java的三种注释: 单行注释:// 多行注释:/* */ 文档注释:/** */ 二、标识符 1. 关键字 Java所有的组成部分都需要名字。类名、变量名以及方法名都被成为标识符。 2. 标识符注意点 所有标识符都应该以字母(A-Z或a~z)、美元符($)、下划线(_)开始; 首字母之后可以是字母字母(A-Z或a~z)、美元符($)、下划线(_)或数字的任何字符组合; 不能使

baidu_38126306的博客 224

kuangshenshuo-方法-详解及拓展

Java方法 1. 什么是方法 System.out.**println() ** --> 类.对象.方法 Java方法是语句的集合,它们在一起执行一个功能: 解决一类问题的步骤的有序组合; 包含于类或对象中; 在程序中被创建,在其他地方被引用。 设计方法的原则:一个方法只完成一个功能,有利于后期扩展。即保持方法的原子性。 方法的命名规则:第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。 2. 方法的定义 Java的方法类似与其它语言的函数,是一段用来完成特

baidu_38126306的博客 372

kuangshenshuo-面向对象编程-回顾方法

回顾方法 1. 方法的定义 修饰符 返回值类型 break:跳出switch,结束循环;return:结束方法,返回一个结果(可以是空); 方法名:注意规范;见名只意 参数列表:(参数类型,参数名) 可变参数 … 异常抛出 示例1: import java.io.IOException; //Demo01 类 public class Demo01 { //main 方法 public static void main(String[] args) { } /

baidu_38126306的博客 192

kuangshenshuo-流程控制-Scanner

用户交互Scanner 1. Scanner 对象 实现程序和人的交互。java.util.Scanner 可以通过Scanner类来获取用户的输入; 基本语法: Scanner s = new Scanner(System.in); 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前一般需要使用hasNext()与hasNextLine()来判断是否还有输入的数据; next(): 一定要读取到有效字符后才可以结束输入; 对输入有效字符之前遇到空白,n

baidu_38126306的博客 580

kuangshenshuo-作业-计算器-简单的加减乘除功能计算

计算器—简单的加减乘除功能实现 要求:一个计算器,要求实现加减乘除功能,并且能够循环接收新的数据,通过用户交互实现。 思路: 写4个方法:加减乘除; 利用循环+switch进行用户交互; 传递需要操作的两个数; 输出结果; public class CalculatorDemo { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Syste

baidu_38126306的博客 395

kuangshenshuo-面向对象编程-封装

OOP --> 封装详解 该露的露,该藏的藏 “高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合即仅暴露少量的方法给外部使用。 封装 数据的隐藏。通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这成为信息隐藏。 属性私有,get/set。 作用: 1.提高程序的安全性,保护数据 2.隐藏代码的实现细节 3.统一接口 4.系统可维护增加了 public class Student { //属性私有 private

baidu_38126306的博客 301

kuangshenshuo-数组-稀疏数组

稀疏数组 需求:编写五子棋游戏中,有存盘退出和续上盘的功能; 分析问题:因为该二维数组的很多值是默认值0,因此记录了很多没有意义的数据; 解决 --> 稀疏数组。 稀疏数组可以看做是普通数组的压缩,(该普通数组是值无效数据量远大于有效数据量的数组)。如: 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

baidu_38126306的博客 276

kuangshenshuo-面向对象编程-初识面向对象

面向对象——Java的核心思想 1. 面向对象& 面向对象 面向过程思想 线性思维。步骤清晰简单,第一步做什么、第二部做什么… 适合处理一些较为简单的问题 面向对象思想 分类的思维模式。思考问题首先会考虑解决问题需要哪些分类,然后对这些分类进行单独思考,最后对某个分类下的细节进行面向过程的思索。 适合处理复杂的问题,适合处理需要多人协作的问题。 对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路

baidu_38126306的博客 276

kuangshenshuo-基础-数据类型扩展及类型转换

Java数据类型扩展 1. 整数扩展 二进制:0b开头 十进制 八进制:0开头 十六机制:0x开头 0~9 A~F int i = 10; int i2 = 010; //八进制 int i3 = 0x10; //十六进制 0~9 A~F //int i3 = 0x11; System.out.println(i); //10 System.out.println(i2); //8

baidu_38126306的博客 274

kuangshenshuo-方法-递归思想

Java方法——递归思想 递归:A方法调用A方法!即自己调用自己; 利用递归可以用简单的程序来解决一些复杂的问题。通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合; 递归结构包括两个部分: 递归头:什么时候不调用自身方法。如果没有头,将陷入死循环; 递归体:什么时候需要调用自身方法。 //阶乘 public static v

baidu_38126306的博客 247

kuangshenshuo-数组-Arrays类

Arrays类 java.util.Arrays(查看API文档) This class contains various methods for manipulating arrays (such as sorting and searching). This class also contains a static factory that allows arrays to be viewed as lists. The methods in this class all throw a Null

baidu_38126306的博客 238

kuangshenshuo-流程控制-顺序结构+if选择结构

1. 顺序结构 Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行; 顺序结构是最简单的算法结构; 语句与语句之间,框与框之间时按照从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。 2. if选择结构 2.1 if单选择结构 判断一个东西是否可行,然后才去执行; 语法: if(布尔表达式){ //如果布尔表达式的值为true将执行的语句 } 练习1: Scanner scanner =

baidu_38126306的博客 237

kuangshenshuo-预科-MarkDown语法

MarkDown学习 标题 三级标题 四级标题 字体 Hello, World! Hello, World! Hello, World! Hello, World! 引用 选择狂神说Java, 走上人生巅峰 分割线 图片 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hJ9rrgJ4-1597464544295)(F:\aaa.jpg)] 超链接 点击跳转到狂神博客 列表 A B C A B C 表格

baidu_38126306的博客 218

kuangshenshuo-数组-冒泡排序及详解

冒泡排序详解及优化 1. 思路: 比较数组中,两个相邻的元素,如果第一个比第二个大,交换位置; 每次比较,会产生出一个最大,或者最小的数; 下一轮则可少一次排序; 依次循环,直到结束。 2. 图解分析: 以数组int[] arr = {6, 3, 5, 7, 0}为例,图解分析如图所示: 总结图解分析。外层共循环了arrr.length-1次,外层循环增加一次,对应内层循环就减少一次。 时间复杂度=O(n2);空间复杂度=O(1), 是一种稳定的排序算法。 3. 代码实现: import ja

baidu_38126306的博客 213

kuangshenshuo-数组-下标越界及小结

数组下标越界及小结 1.数组的四个基本特点 其长度是确定的。数组一旦被创建,它的大小就是不可以改变的; 其元素必须是相同类型的,不允许出现混合类型; 数组中的元素可以是任何数据类型,包括基本类型和引用类型; 数组变量属于引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量; 数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中的。 2. 数组边界 下标的合法区间:[0,length-1];如果越界就会报错; java.lang.

baidu_38126306的博客 211

kuangshenshuo-数组-三种初始化及内存分析

Java内存分析详解 1. Java内存的一些概念 栈空间(stack) --> 连续的存储空间,遵循后进先出原则,存放基本变量类型(会包含这个基本类型的具体数值,) 堆空间(heap) --> 不连续的空间,存放new的对象和数组,可以被所有的线程共享,不存放别的对象引用; 方法区(method) --> 在堆空间内,包含了所有的class和static变量,可以被所有的线程共享。 数据类型的默认值: 基本数据类型默认值: 数值型:0 浮点型:0.0 布尔型:f

baidu_38126306的博客 206
上一篇: kuangshenshuo-基础-变量、常量、作用域
下一篇: kuangshenshuo-基础-包机制及JavaDoc生成文档
西西ANO
博客等级 码龄9年 2059粉丝 274原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值