java 编程思想-java运算符--曾经不太明确的
1.java 运算符
主要是逻辑运算符和按位运算符;移位运算符-name
tecmint.txt
逻辑运算符:And(&&) ; OR(||);Not(!)
按位运算符:And(&); OR(|); XOR(^);Not(~)
移位运算符:>> ; << ; >>>
按位运算符:
public void test_and(){ int a = 128;
// 0000 0000 0000 0000 0000 0000 1000 0000 int b = 129;
// 0000 0000 0000 0000 0000 0000 1000 0001 //
结果: 1&1 = 1; 0&1 = 0;0&0 = 0 a = a&b;
// 0000 0000 0000 0000 0000 0000 1000 0000 System.out.println("a&b = "+a);
// 结果: 1|1 = 1; 0|1 = 1;0|0 = 0 b = a|b;
// 0000 0000 0000 0000 0000 0000 1000 0001 System.out.println("a|b = "+b);
// 结果: 1^1 = 0; 0|1 = 1;0|0 = 0 a = a^b; // 0000 0000 0000 0000 0000 0000 0000 0001 b = a^b;
// 0000 0000 0000 0000 0000 0000 1000 0000 a = b^a;
// 0000 0000 0000 0000 0000 0000 1000 0001 System.out.println("a^b 之后: a = "+a +" b = "+b); //发现这样异或,数值交换了 int c = 42;
// 0010 1010 ~= 1101 0101 => 1010 1011 c = ~c;
// java 採用反码计数 负数的反码 = 取反+1(还是负数)
System.out.println("~c c = "+c); }
移位运算符:
<<左移 低位补0 变大
>>右移 高位补0 变小
java 编程思想-java运算符--曾经不太明确的的更多相关文章
- 33.JAVA编程思想——JAVA IO File类
33.JAVA编程思想--JAVA IO File类 RandomAccessFile用于包括了已知长度记录的文件.以便我们能用 seek()从一条记录移至还有一条:然后读取或改动那些记录. 各记录的 ...
- java编程思想-java中的并发(一)
一.基本的线程机制 并发编程使我们可以将程序划分为多个分离的.独立运行的任务.通过使用多线程机制,这些独立任务中的每一个都将由执行线程来驱动. 线程模型为编程带来了便利,它简化了在单一程序中同时jia ...
- java编程思想-java中的并发(二)
二.共享受限资源 有了并发就可以同时做多件事情了.但是,两个或多个线程彼此互相干涉的问题也就出现了.如果不防范这种冲突,就可能发生两个线程同时试图访问同一个银行账户,或向同一个打印机打印,改变同一个值 ...
- java编程思想-java中的并发(四)
五. 新类库中的构件 Java SE5的java.util.concurrent引入了大量设计用来解决并发问题的新类.学习使用它们将有助于编写出更加简单而强壮的并发程序. 1. CountDownLa ...
- java编程思想-java IO系统
一.输入和输出 编程语言的I/O类库中常使用流这个抽象概念,它代表任何有能力产出数据的数据源对象或者是有能力接收数据的接收端对象."流"屏蔽了实际的I/O设备中处理数据的细节. J ...
- java编程思想-java集合总结-基本概念
1.java 容器类类库的用途是"保存对象",并将其划分为两个不同的概念: 1)Collection.一个独立元素的序列,这些元素都服从一条或多条规则.List 必须按照插入的顺序 ...
- java编程思想-java中的并发(三)
三.终结任务 1. 在阻塞时终结 线程状态 一个线程可以处于以下四种状态之一: 1)新建(new):当线程被创建时,他只会短暂的处于这种状态.此时,他已经分配了必须的系统资源,并执行了初始化.此刻线程 ...
- java编程思想-java注解
注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便的使用这些数据. 一.定义注解 注解的定义看起来很像接口的定义.事实上,与其他任何Java接口一样, ...
- java编程思想——java IO系统
一.什么是IO io在本质上是单个字节的移动.而流能够说是字节移动的载体和方式,它不停的向目标处移动数据.我们要做的就是依据流的方向从流中读取数据或者向流中写入数据. 二.java中支持IO操作的库类 ...
随机推荐
- lunix 安装使用mongo
一.下载安装mongo版本客户端 1.进入mongo官网选择需要的版本号: https://www.mongodb.com/download-center/community(官网网址) 2.选择下载 ...
- CSUOJ 1637 Yet Satisfiability Again!
1637: Yet Satisfiability Again! Time Limit: 5 Sec Memory Limit: 128 MB Description Alice recently s ...
- PatentTips - Virtual translation lookaside buffer
BACKGROUND OF THE INVENTION A conventional virtual-machine monitor (VM monitor) typically runs on a ...
- 软件设计师必备——操作系统·
引子: 在今天,我们对于操作系统已经很熟悉,不论是微软的windows还是苹果的Mac OS X,包扩当先很流行的android都在操作系统范畴,而这些操作系统尽管各有各的特点,可是,作为总体,我们能 ...
- LintCode 二叉树的遍历 (非递归)
前序: class Solution { public: /** * @param root: The root of binary tree. * @return: Preorder in vect ...
- vim 基础学习之可视模式
1. 选择模式这个模式必须通过可视模式进入.在可视模式下,我们通过 <C-g>来把我们的可视选中块作为选择模式下的操作块. 这时候我们输入可见字符,就会把这个块给覆盖掉.例如aaa bbb ...
- startActivity-两种start 方式
对于activity的启动有两种方式 1.startActivity-这种方式比较简单,我们就不做讲解了 2.startActivityForResult-这种启动方式可以实现父子activity双向 ...
- java体系学习
前端部分: 1)HTML:网页的核心语言,构成网页的基础 2)CSS:使网页更加丰富多彩灿烂的利器 3)JavaScript:使网页动起来的根本,加强了网页和用户之间的交互 4)HTML DOM:换一 ...
- 关于vue.js中v-model与表单控件的双向绑定。
单选框:<input type="checkbox" id="checkbox" v-model="checked"><l ...
- 压状态bfs
一般地图很小,状态不多,可以装压或者hash,构造压缩或hash的函数,构造还原地图的函数,然后就无脑bfs(感觉就是SPFA) 题目: 1.玩具游戏:二进制压缩状态 #include<cstd ...