java中的补码,

1.在计算机系统中,数值一律用二进制的补码来存储的。

2.二进制的最高位是符号位,0表示正数,1表示负数。

3.正数的值是其本身,负数的值是最高位(符号位)不变,其他的位逐位取反,再加1;

将正的十进制数除以二,得到的商再除以二,依次类推知道商为零或一时为止,然后在旁边标出各步的余数,最后倒着写出来,高位补零就OK

比如:-11100;---这个是真值,---我们是以8位的进行出来位数的

原码:就是转化正常二进制的数据,

1. 10011100  ---- (-10011100的原码)

2. 先得到绝对值的原码  ----00011100     

 取反+1  -------11100011+1——>11100100

对应我们使用---转换工具:比如:http://tool.oschina.net/hexconvert/

这些都是不考虑最高位的符号的,---所以我们也不要感到怀疑,(比如:127    -127怎么转换成二进制的时候,没有什么变化,只在最前面加的了一个负号(-))

下面是一些概念性的东西:

1. 原码、反码、补码:

(1)在Java中,所有数据的表示方式都是以补码形式来表示

(2)正数:原码、反码、补码相同

(3)负数:符号位为1,其余各位是对原码取反,然后整个数加1

(4)~按位取反(反码加1称为补码。)步骤就是先求出这个数(因为java存的数是补码)的原码,然后对原码取反得到X,这个X就是我们要求的那个数的补的

 

2,在switch语句中,一定要,在美国case选项中,写不break,不然很容易出现  “贯穿” 的现象发生,,就是case的每个语句都执行,

 

3.逻辑运算中的    与    或  非    这个3个区别

长路与 (&)    a&b    比如这个,这个表达式的左右两边都要进行判断,然后,再进行最终的判断,

短路与(&&)  a&&b 比如这个,在判断这个的时候,  只要有一个是false,后面的另外一个判断都可以不用判断了,直接就出结果

 

长路或运算(|):将二边 关系运算的结果都计算出来,再进行判断。

短路或运行(||) :当运算符号的左边的关系运算结果是true时,不在进行右边的关系就是那,直接的结果的结果就是true

非运算:!

 

 

4.static 静态变量  静态方法,

5.jdk8的lambda语法的

主要是为了区别,匿名内部类的问题,

这个是举例了,简单的例子。

new Runnable(){
    @Override
    public void run() {
        System.out.println("run方法的实现方法");

    }
}.run();


  Runnable r=()->{
      System.out.println("run方法的实现方法");
  };
  r.run();

6.

//    大小写转换:ctrl+shift+u
    //ctrl+alt+u---显示数据结构

7.  java  jdk8的新特性;

  lambda表达式:

一:foreach循环:

Stream<People> stream = people.stream();
stream.forEach(people1 -> System.out.println(people1.toString()));

二:过滤器:filter的使用

stream.filter(people1 -> people1.getGender().equals(People.Sex.FEMALE))
.forEach(people2 -> System.out.println("----"+people2.toString()));

三:doublestream;

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值