首页 > 其他分享 >基本运算符

基本运算符

时间:2024-03-05 16:11:42浏览次数:18  
标签:基本 运算 int System 运算符 println public out

Java语言支持如下运算符

  • 重点掌握的运算符

    1. 算数运算符:+、-、*、/、%、++、--

      • %(取余、模运算):例如 11 / 5 = 2 .. 1(余1)

      • +、-、*、/运算代码举例

        public class Demo01 {
            public static void main(String[] args) {
                int a = 10;
                int b = 20;
                int c = 25;
                int d = 25;
        
                System.out.println(a+b); //30
                System.out.println(a-b); //-10
                System.out.println(a*b); //200
                System.out.println(a/(double)b); //0.5  这里需要重点注意其中一个int类型值的类型转换,否则会返回0
            }
        }
        
        public class Demo02 {
            public static void main(String[] args) {
                long a = 123456789012345L;
                int b = 123;
                short c = 10;
                byte d = 8;
        
                System.out.println(a+b+c+d); //1234567890123486 返回long类型值
                System.out.println(b+c+d); //141 返回int类型值
                System.out.println(c+d); //18 返回int类型值
        
                //当运算时运算的数值内含有long类型时,优先返回long类型。反之默认返回int类型,需要返回浮点数时需要在运算时进行其中一位数值转换类型!
            }
        }
        
      • %运算代码举例

        public class Demo04 {
            public static void main(String[] args) {
                
                //模运算取余用法
                
                int a = 10;
                int c = 21;
        
                System.out.println(c%a); //1    21 / 10 = 2 .. 1
                
            }
        }
        
      • ++、--运算代码举例

        public class Demo05 {
            public static void main(String[] args) {
                //++    --    自增    自减     一元运算符
        
                int a = 3;
        
                int b = a++; //执行完这行代码后,先给b赋值,b等于a时,再自增
                //a = a + 1
                System.out.println(a); //4
                //a = a + 1
                int c = ++a; //执行完这行代码后,先自增,再把结果给c赋值
        
                System.out.println(a); //5
                System.out.println(b); //3
                System.out.println(c); //5
        
                //a-- --a 同理
                
                //注意点举例
                int e = 5;
                boolean f = e++==5;
                
                System.out.println(e); //5 ++不会在布尔值类型变量中执行运算
            }
        }
        
    2. 赋值运算符:=

      • =:例如 int a = 10
    3. 关系运算符:>、<、>=、<=、==、!=

      • ==:判断(if)语法中等于使用’==‘运算

      • !=:判断(if)语法中不等于使用'=='运算

      • true与false运算代码举例

        public class Demo03 {
            public static void main(String[] args) {
                //关系运算符返回的结果:正确、错误 (布尔值)
                //通过if运算返回true或者false
                
                int a = 10;
                int b = 20;
        
                System.out.println(a>b); //false
                System.out.println(a<b); //true
                System.out.println(a==b); //false
                System.out.println(a!=b); //true
            }
        }
        
    4. 逻辑运算符:&&、||、!

      • &&:与、and、且

      • ||:或、or

      • !:非、取反

      • &&、||、!运算代码举例

        //逻辑运算符
        public class Demo07 {
            public static void main(String[] args) {
                //  与(and、且)  或(or)   非(取反)
                boolean a = true;
                boolean b = false;
        
                System.out.println("a && b:" + (a&&b)); //false 逻辑与运算:两个变量都为真,结果才返回true
                System.out.println("a || b:" + (a||b)); //true 逻辑或运算:两个变量有一个为真,结果才返回true
                System.out.println("! (a && b):" + !(a&&b)); //true 逻辑非运算:通过与、或运算,结果为真则返回false,反之返回true
        
                //短路运算
                int c = 5;
                boolean d = (c<4)&&(c>4);
        
                System.out.println(d); //false 在布尔值类型变量的与运算中,若出现2个逻辑运算时第一个逻辑返回false后面的逻辑运算则终止
            }
        }
        
  • 用于效率的运算符

    1. 位运算符:&、|、^、~、>>、<<

      • ^(幂运算):2 ^ 3 = 2 * 2 * 2 = 8

      • ^运算代码举例

        public class Demo06 {
            public static void main(String[] args) {
                //很多运算,我们会使用一些工具类来操作
                double pow = Math.pow(2,3); //2的3次方
                System.out.println(pow); //8.0      2 * 2 * 2
            }
        }
        
      • &、|、^、~位运算

        • 位运算:专门用于二进制逻辑判断(非0即1)

        • &:与、and、且

        • |:或、or

        • ^:取异位

        • ~:取反

        • 代码运算举例

          public class Demo08 {
              public static void main(String[] args) {
                  /*
                  二进制位运算符应用
                  真为1反之为0 (1优先级大于0,取异位符运算时0优先级大于1)
                  A = 0011 1100;
                  	↓↓↓↓ ↓↓↓↓
                  B = 0000 1101;
                  ↓二进制数位对位运算↓
                  A&B 0000 1100; //与运算时都为1才返回1,反之返回0
                  A|B 0011 1101; //或运算时有一位数为1即返回1,否则返回0
                  A^B 0011 0001; //取异位运算时数值相同为0,反之为1
                  ~B  1111 0010; //取反运算时数值0则返回1,反之返回0
                  */
              }
          }
          
        • 通常面试时会被提问,2 * 8 怎么运算?

          • 我们都知道 2 * 8 = 16,但是计算机不知道,我们可以把它拆分为 2 * 2 * 2 * 2 ,在数值运算时每次运算都在变大,而在二进制位运算中,它会运算的非常快,在位运算中,它只需要换一个灯亮改变高低电路即可(0变为1);而计算机正常运算这个的话,由于它底下都是电路的原因,它会在底层做非常多的事情。
      • <<、>>位运算

        • <<:左移、增大一倍

        • >>:右移、减小一倍

        • 代码运算举例

          /*
          在很多底层算法里面会用到位计算来做一些精巧的运算,在位运算当中有一个好处:效率高。因为它是跟底层(二进制)打交道的
          
          <<:左移、增大一倍
          >>:右移、减小一倍
          
          0000 0000 = 0
          0000 0001 = 1
          0000 0010 = 2 //1 + 1 = 2 进1
          0000 0011 = 3
          0000 0100 = 4 //2 + 2 = 4 进1
          0000 1000 = 8 //4 + 4 = 8 进1
          0001 0000 = 16 //8 + 8 = 16 进1
          
          二进制数数字1每右移一位,十进制数值即增大一倍
          我们只需要只要相同的数+相同的数即为逢二进一即可
          */
          
          System.out.println(2<<3); //16   2 (0000 0010) 右移3位即为 0001 0000
          
    2. 条件运算符:?、: (三元运算符)

      • 代码运算举例

        public class Demo10 {
            public static void main(String[] args) {
                // 三元运算符
                // x ? y : z
                //如果x==true,返回y,反之返回z
        
                int score = 80;
                String type = score <60 ?"不及格":"及格";
                
                System.out.println(type); //及格
            }
        }
        
    3. 扩展赋值运算符:+=、-=、*=、/=

      • 代码运算举例

        public class Demo09 {
            public static void main(String[] args) {
                int a = 10;
                int b = 10;
        
                a += b; //a = a + b
        
                System.out.println(a); //20
        
                a -= b; //a = a - b
        
                System.out.println(a); //10
        
                a *= b; //a = a * b
        
                System.out.println(a); //100
        
                a /= b; //a = a / b
        
                System.out.println(a); //10
            }
        }
        
    4. 扩展字符串连接符:+

      • 代码运算举例

        public class Demo09 {
            public static void main(String[] args) {
                int a = 10;
                int b = 10;
                
                System.out.println(a+b); //20 ‘+’执行正常int代码运算
                System.out.println(""+a+b); //1010 在运算代码前面加入string时,‘+’会转变为字符串链接符
                System.out.println(a+b+""); //20 在运算代码后面加入string时,‘+’会先执行正常int代码运算,最后得出的int结果通过后面的string整体变为string
            }
        }
        

标签:基本,运算,int,System,运算符,println,public,out
From: https://www.cnblogs.com/ajunjava/p/18054284

相关文章

  • BigDecimal的基本使用
    BigDecimal的基本使用BigDecimal是Java中用于处理高精度数值的类。它可以表示任意精度的小数,并提供了各种数值运算的方法。1、创建BigDecimal对象BigDecimal类提供了多个方法来创建BigDecimal对象,下面是一些常用的方法: -BigDecimal(Stringval):使用字符串作为参数创建Bi......
  • 基本操作之——Unicode编码
    自版本18.11后,支持UTF-81.字符转Unicode码tuple_ord('s',Ord)dev_clear_window()dev_disp_text('\'s\'的Unicode码为'+Ord,'window','center','center','black','box_color','#00ffffc0......
  • 2.Python3 基本数据类型
    Python3基本数据类型python是弱类型语言,弱类型语言有两个特点:变量无须声明就可以直接赋值,对一个不存在的变量赋值就相当于定义了一个新变量。变量的数据类型可以随时改变,比如,同一个变量可以一会儿被赋值为整数,一会儿被赋值为字符串。弱类型并不等于没有类型!弱类型是说在书写......
  • 4.Python3 运算符
    Python3运算符1.Python算术运算符以下假设变量a=10,变量b=21:运算符描述实例+加-两个对象相加a+b输出结果31-减-得到负数或是一个数减去另一个数a-b输出结果-11*乘-两个数相乘或是返回一个被重复若干次的字符串a*b输出结果210/除......
  • 基本操作之——字符截取操作
    *字符截取操作 String1:='abcdefghij'String2:='0123456'Message:='字符截取操作'Message[1]:='String1:=\'abcdefghij\''Message[2]:='String2:=\'0123456\''dev_clear_window()dev_disp_te......
  • 数据挖掘概念与技术 - chapter 6 - 挖掘频繁模式、关联与相关性:基本概念与方法
    ***关联推荐!频繁模式:频繁地出现在数据集中的模式,给出数据集中反复出现的联系。频繁序列模式:如有序购买一系列产品频繁结构模式:如组合购买产品sample购物篮分析:通过发现顾客放入他们购物篮中的商品之间的关联,分析顾客的购物习惯,这种关联度发现可以帮助零售商在哪些商品频繁......
  • SQL基本命令及使用:
    首先,测试人员需掌握基本的SQL语句,简单来说就是数据库的增删改查操作1.查询selectselect*from表名 2.更新updateupdate表名set字段名=值3.插入INSERTINTOinsertinto表名字段名=值4.删除deletedelete from表名where条件如上为最简单的增删改查及相应命......
  • BUG管理工具(JIRA)的基本使用
    此处以jira为例(其他工具大同小异,自行了解)首先测试人员发现问题后,有截图时,需先自行保存(命名最好描述简介明了,以免管理工具上传有误)1.打开公司给的访问JIRA的链接,输入公司给你注册的账号和密码,点击登录2.点击JIRA主菜单上的“创建”,进入编辑bug界面3.关联项目问题类型:点击输入......
  • JAVA学习笔记--运算符
    运算符注意:()的优先级最高,因此可以多打一些()提高代码的可读性!!算术运算符:+、-、*、/、%(模:取余)、++(自增)、--(自减)publicclassDemo1{publicstaticvoidmain(String[]args){inta=10;intb=20;System.out.println(a+b);......
  • selenium的基本使用
    1.基本使用browser.current_urlbrowser.get_cookies()browser.page_source2.定位元素fromselenium.webdriver.common.byimportByinput_first=browser.find_element(by=By.ID,value='q')input_first=browser.find_element(by=By.CSS_SELECTOR,value='......