`

Java 运算符汇总

 
阅读更多
Java 运算符为4种:算术运算符(+ ,-, *, /),关系运算符(> ,>= ,<, <=, !=, ==),逻辑运算符(&&,||,!),位运算符(&,|,^,~)
 
其中位运算,逻辑运算容易搞混,以及逻辑运算中的短路运算与非短路运算

一 位运算符

1、 位运算符:

        &运算,即两个操作数中都为1,则为1,否则为0。例如2制度转为16进制:
public class JinZhiZhuanHuan {

   private static String HEX_STR = "0123456789ABCDEF";
   public static void main(String[] args) {
      String str = "二进制与十六进制互转测试";
      String hexStr = BinaryToHexString(str.getBytes());
      System.out.println(hexStr);
   }

   /**
    *
    * @param bytes
    * @return
    */
   public static String BinaryToHexString(byte[] bytes){
      String result = "";
      String hex = "";
      for(int i = 0; i < bytes.length; i++){
         /**
          * 一个byte是占8个字节,而16进制必须是两位的16进制占8个字节,所以要么是oxF0,要么是 ox0F
          * 而oxF0在二进制中是1111 0000,所以要与byte进行&运算,运算的结果得向左移4位成为想要的数据
          */
         //字节高4位
         System.out.println(String.valueOf(bytes[i]));
         hex = String .valueOf(HEX_STR.charAt(bytes[i] & 0xF0 >> 4));
         System.out.println("高位结果是:" + String.valueOf(bytes[i] & 0xF0 >> 4));
         //字节低4位
         hex += String.valueOf(HEX_STR.charAt(bytes[i] & 0x0F));
         System.out.println("低位结果是:" + String.valueOf(bytes[i] & 0x0F));
         result += hex;
        
      }
      System.out.println("====================");
      return result;
  
   }
备注:其中的bytes[i] & 0xF0意义不大,因为0xF0就是1111  0000,已经为1了,“&”运算的结果仍是由bytes[i]而定

2、| 运算符
     被比两个数有一个为1则为1,否则为0

3、~运算符

      取相反的数,即如果位为1,则运算后为0,如果位为1,则运算后为0.

4、^异或运算符

      如果被操作的两个数,只有不同结果的才为1,相同的则为0

二、逻辑运算符

1、短路运算符,一般称为“条件运算符”,在开发过程中一般用短路运算符较多
     1)、&&运算
       两都同为真则为真,如果&&前面的结果为false,则短路不执行&&后面的

     2)、|| 运算
        有一个为真则为真

2、非短信运算符,一般称为“逻辑操作符”

     不管“&”或者“|”前面的运算结果是否true还是false,都会执行“&”或者“|”后面的运算。
}

分享到:
评论

相关推荐

    Java基础知识汇总1——xmind

    该ximind文档为Java基础知识汇总,包括Java基本分类、Java的变量、Java的运算符、Java常用的工具介绍、流程控制语句、数据、面向对象等知识总结。

    java核心基础汇总.docx

    运算符:Java中的运算符包括算术运算符、逻辑运算符、比较运算符等,可以用于计算和比较表达式的值。 流程控制:Java中的流程控制语句包括条件语句、循环语句和异常处理语句等,可以控制程序的执行流程。 面向对象:...

    Java基础知识汇总

    jdk,eclipse使用,循环,数组,基础API,面向对象,循环,运算符,关键字,String详解,IO流

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    3.2 Java运算符 36 3.2.1 变量的概念 36 3.2.2 插曲:Java中的语句 37 3.2.3 创建一个变量和变量名的规范 37 3.2.4 Java中的基本运算符和表达式 39 3.2.5 Java中的布尔运算符 43 3.3 基本数据类型运算的难点 ...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    3.2 Java运算符 36 3.2.1 变量的概念 36 3.2.2 插曲:Java中的语句 37 3.2.3 创建一个变量和变量名的规范 37 3.2.4 Java中的基本运算符和表达式 39 3.2.5 Java中的布尔运算符 43 3.3 基本数据类型运算的难点 ...

    Java编程语言的基础知识作了一个较为全面的汇总-供大家学习研究参考

    1、Java主要特点 2、计算机的高级汇编语言类型: 3、JVM(Java Visual Machine) 4、编写第一个Java程序并运行 5、CLASSPATH指的是类加载路径 6、程序注释,对以后的所有代码都要进行注释,主页可以方便进行开发需求 ...

    Java 基础核心总结 +经典算法大全.rar

    数据类型基础语法运算符 Java 执行控制流程条件语句 if 条件语句 if...else 条件语句if...else if 多分支语句switch 多分支语句 循环语句 while 循环语句do...while 循环for 循环语句 跳转语句 break 语句 continue ...

    Java疯狂讲义课后习题答案

    因此,我们可以使用该工具来快速...疯狂Java讲义笔记汇总 目录 一、基础类型 二、流程控制与数组 三、面向对象 四、基础类库 五、集合 六、泛型 七、异常 八、数据库 九、注释 十、输入输出 十一、网络 十二、类加载机制

    java经典面试题汇总

    答:&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 5、Collection 和 Collections的区别 答:Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个...

    Java基础第一小阶段思维导图(知识点汇总)

    JAVA第一小阶段可分为Java历史、变量和运算符、分支结构的使用、循环语句的使用、函数、数组,在思维导图中对各个小节知识点进行了分析以及汇总。

    Java自学手册:入门到精深,无人自通 高清完整PDF版

    本资源共分为7章1.Java基础、2.最简单的Java程序、3.Java语言中的数据与运算符、4.设计中的流程控制...,对于java初学者来说是一份不错的学习文档。另附上汇总的一些java学习精品资料和专题,欢迎大家下载学习。

    Java数据库编程宝典3

    3.7 将查询结果进行汇总 3.7.1 集合函数 3.7.2 使用HAVING子句来筛选组 3.7.3 使用索引提高SQL查询效率 3.7.4 格式化SQL命令 3.7.5 使用SQL连接 3.7.6 编写SQL的JOIN命令 3.7.7 使用UNION运算符进行组合查询...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    1.4.2 web应用服务器汇总 1.4.3 获取Tomcat 1.4.4 熟悉Tomcat的五脏六腑 1.5 JavaWeb开发利器之Eclipse 1.5.1 获取Eciipse 1.5.2 运行Eclipse 1.5.3 打造中文版Eclipse 1.6 做好项日开发的准备工作 1.6.1 集成...

    JAVA基础知识的汇总

    只作为参考,学习使用,若有侵权请及时联系,主要内容:基础环境搭建;基础名称介绍;运算符;继承;对象;函数方法’等

    Java入门基础学习资料day11

    此java基础课程,适合0基础小白,课程一共11天课时,目录如下: day01【前言、入门程序、常量、变量】 day02【数据类型转换、运算符、方法入门】 day03【流程控制语句】 day04【 Idea、方法】 day05【数组】 day06...

    Java入门基础学习资料day07-08

    此java基础课程,适合0基础小白,课程一共11天课时,目录如下: day01【前言、入门程序、常量、变量】 day02【数据类型转换、运算符、方法入门】 day03【流程控制语句】 day04【 Idea、方法】 day05【数组】 day06...

    Java入门基础学习资料day01-02

    此java基础课程,适合0基础小白,课程一共11天课时,目录如下: day01【前言、入门程序、常量、变量】 day02【数据类型转换、运算符、方法入门】 day03【流程控制语句】 day04【 Idea、方法】 day05【数组】 day06...

    Java入门基础学习资料day09-10

    此java基础课程,适合0基础小白,课程一共11天课时,目录如下: day01【前言、入门程序、常量、变量】 day02【数据类型转换、运算符、方法入门】 day03【流程控制语句】 day04【 Idea、方法】 day05【数组】 day06...

Global site tag (gtag.js) - Google Analytics