一.运算符。

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

2.自增自减 :++ ,--

++在前 先运算在赋值

++在后 先赋值后运算

-- 减减同上.

3.赋值运算符 : = ,+=,-=,*=,/=

4.关系运算符 : >,<,>=,<=,== ,!=

5.逻辑运算符: & ,| ,! ,&& ,||

6.位运算符:

(1).位运算符的符号:

& (与):两者都是1的时候我就是一,其他都是0

|(或):两者都为0时才为0 ,其他的都是1.

^(异或):两者不同为1,相同为0

~(取反):0变为1,1变为0.

(2).负数的表现形式: 二进制位的最高位为1,那么这个数就是一个负数。

-1:1111-1111  1111-1111 1111-1111 1111-1111

0:0000-0000 0000-0000 0000-0000 0000-0000

-2:1111-1111  1111-1111 1111-1111 1111-1110

-3:1111-1111  1111-1111 1111-1111 1111-1101

-4:1111-1111  1111-1111 1111-1111 1111-1100

-5:1111-1111  1111-1111 1111-1111 1111-1011

-6:1111-1111  1111-1111 1111-1111 1111-1010

-7:1111-1111  1111-1111 1111-1111 1111-1001

7:0000-0000  0000-0000 0000-0000 0000-0111

规律:负数所对应的正数-1 ,取反负数所对应的正数取反+1

(3).移位操作符:对二进制位进行操作

>>  右移

<<  左移

>>> 无符号右移

//右移:

System.out.println(6>>1); // --->3  6/2  2*1

System.out.println(6>>2); // --->1  6/4  2*2

System.out.println(6>>3); // --->0  6/8  2*3

System.out.println(-6>>1); //  -6/2 -->-3

//规律: 右移多少位,就用需要移动的数除以2的多少次方。

//左移 :

System.out.println(6<<1); // --->12  6*2  2*1

System.out.println(6<<2); // --->24  6*4  2*2

System.out.println(6<<3); // --->48  6*8  2*2*2

System.out.println(6<<4); //---->96  6*16 2*2*2*2

System.out.println(-6<<2);//--->-24

//规律: 左移多少位,就用这个数乘以2多少次方。

//>>>无符号的右移

特点:无论你的最高位是0还是1,空缺位都补0。

System.out.println(6>>>1); //3

System.out.println(6>>>2); //1

System.out.println(-6>>>2); // 1073741822

作用 : 提高运算速率。位运算是执行最快。
特点 : 一个数A和两个相同的数^,最后结果还是原来的数A。

java的基础知识运算符的更多相关文章

  1. JAVA相关基础知识

    JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...

  2. Java 多线程——基础知识

    java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...

  3. java必备基础知识(一)

    学习的一点建议: 每一门语言的学习都要从基础知识开始,学习是一个过程,"万丈高楼平地起",没有一个好的地基,想必再豪华的高楼大厦终究有一天会倒塌.因此,我们学习知识也要打牢根基,厚 ...

  4. 什么才是java的基础知识?

    近日里,很多人邀请我回答各种j2ee开发的初级问题,我无一都强调java初学者要先扎实自己的基础知识,那什么才是java的基础知识?又怎么样才算掌握了java的基础知识呢?这个问题还真值得仔细思考. ...

  5. java部分基础知识整理----百度脑图版

    近期发现,通过百度脑图可以很好的归纳总结和整理知识点,本着学习和复习的目的,梳理了一下java部分的知识点,不定期更新,若有不恰之处,请指正,谢谢! 脑图链接如下:java部分基础知识整理----百度 ...

  6. C语言基础知识-运算符与表达式

    C语言基础知识-运算符与表达式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常用运算符分类 1>.算术运算符 用于处理四则运算. 2>.赋值运算符 用于将表达式的 ...

  7. Java SE 基础知识(一)

    一.基础知识 1. Java SE : Java Standard Edition Java ME : Java Micro Edition Java EE : Java Enterprise Edi ...

  8. JAVA多线程基础知识(一)

    一. 基础知识 要了解多线程首先要知道一些必要的概念,如进程,线程等等.开发多线程的程序有利于充分的利用系统资源(CPU资源),使你的程序执行的更快,响应更及时. 1. 进程,一般是指程序或者任务的执 ...

  9. JAVA学习基础知识总结(原创)

    (未经博主允许,禁止转载!) 一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平 ...

随机推荐

  1. py

    import httplib,urllib import re import random def Login(userid,password): params=urllib.urlencode({' ...

  2. [SHOI2008]堵塞的交通traffic

    我是萌萌的传送门 这题说白了就是一个支持加边和删边的图连通性维护,不过鉴于图的特殊性,可以直接线段树(听说标算就是这个--). 然而我人比较懒,不想思考怎么线段树,于是乎写了一发分治并查集,1A我真是 ...

  3. asp:Repeater实例备忘

    1.前置部分 <asp:Repeater ID="rptPlanNo" runat="server" OnItemDataBound="rptP ...

  4. Redis Cluster 介绍与使用

    Redis Cluster 功能特性 Redis 集群是分布式的redis 实现,具有以下特性: 1. 高可用性与可线性扩张到1000个节点 2. 数据自动路由到多个节点 3. 节点间数据共享 4. ...

  5. 《转载》myeclipse 上安装 Maven3

    本文转载自http://www.cnblogs.com/fancyzero/archive/2012/06/09/maven3.html 环境准备: JDK 1.6 Maven 3.0.4 myecl ...

  6. Android知识点总结[转]

  7. extern

    gcc编译器编译程序有四个阶段,预处理.编译.汇编.链接.预处理阶段会将源代码中的包含的头文件如stdio.h编译进来:编译阶段,gcc首先要检查代码的规范性.是否有语法错误等,以确定代码的实际要做的 ...

  8. rdlc报表相关

    错误提示:1.尚未指定报表定义的来源 注意ReportPath与ReportEmbeddedResource的区别,前者获取或设置本地报表的本地文件系统路径,设置此属性将导致后者属性值被忽略:后者将获 ...

  9. Mac系统下React Native环境搭建

    这里记录一下在Mac系统下搭建React Native开发环境的过程: 1. 安装HomeBrew: /usr/bin/ruby -e "$(curl -fsSL https://raw.g ...

  10. tif文件导入postgresql

    raster2pgsql -I -F -N -999  文件名  数据库名 | psql -U postgres -d postgres