为黑马奋斗的日子--java基础巩固下

 


---------------------- android培训java培训、期待与您交流! ----------------------

                                                                                                                     为黑马奋斗的日子-java基础巩固下
     接着昨天的继续:
  1.java中的位运算符
  先要补充一些数据结构的知识 :
   二进制:
            意思是逢2进1 是按从右到左的次序
            注意事项: 二进制的最高位是符号位 :0是正数 1是负数 ;正数的原码,反码,补码都是一样的,而负数的反码是它的
  原码符号位不变 (1→0,0→1) 负数的补码是反码加1  0的反码,补吗都是它本身 在计算机运算的时候 对有符号的数都是以补      码来计算的 (在java中没有无符号的数)
  位运算符:
           在java中有4个位运算符:&(按位与),|(按位或),^(按位异或),~(按位取反)
            它们的运算规则为:&按位与:2个全为1,则取1     如2&3=2
                              |按位或:2个有1个为1,则取1 如2|3=3
                              ^按位异或:2个一个为1,一个为0,则取1 如-3^3=-2
                              ~按位取反:就是1变0,0变1 如:~-5=4
           注意在上面计算完是负数 则说明这是它的补码,要再计算出它的原码
  移位运算符:
           在java中有3种移位运算符 :>>(算术右移),<<(算术左移),>>>(逻辑右移)
                   运算规则为: >>(算术右移) 符号位不变 低位溢出,用符号位补溢出的高位 如(1>>2)=0,(-1>>2)=-1
                                1个数右移几次也就等于除以2的几次方
                                <<(算术左移) 符号位不变,低位补0 如(1<<2)=4,(-1<<2)=-4
                                1个数左移几次也就同时等于乘以2的几次方
                                >>>(逻辑右移) 低位溢出,高位补0 如:(3>>>2)=0
     
          
 集合与泛型:
          java中常用的集合分为:vector,stack,ArrayList,HashMap,Hashtable.
          java集合类主要有以下几种: List结构的集合类: ArrayList,LinkedList,vector,stack
                                     Map结构的集合类:  HashMap类,Hashtable类,
                                     Queue结构的集合类:Queue接口
          一些集合使用的方法:add(添加)/在HashMap Hashtable中用put,size表示大小,remore(删除)。
          集合总结:
          在LinkedList在  对象名.addFirst(对象名) 向数链前面添加(表示后添加的在数链的前面)
                          对象名.addLast(对象名) 向数链后面添加(表示后添加的在数链的最后)
          在HashMap 和Hashtable中 数据放入是用对象.Put(键,值)
                                  所以在可以用键来直接查找 如:对象名.containsKey("key") 这句话返回的是个boolean类型
                                  迭代器(Iterator)
                                  想要遍历Hashmap中所有key,value可以用Iterator
                                  如:Iterator it=集合对象.keyset().itreator();
          集合中的区别:
                       1.HashMap 与 Hashtable:
                         他们不同在与 Hashtable是同步的,这也保证了Hashtable中的对象是线程安全的
                         而HashMap则是异步的 因此HashMap中的对象并不是线程安全
                       2.ArrayList 与 Vector
                         和上述一样 Vector是同步的,而ArrayList不是同步的 但同步同时也会影响执行的效率
                         数据增长不一样,vector默认为原来的一倍,而ArrayList是原来的50%
         泛型:
              泛型本质就是参数化类型,也就是说所操作的数据类型被指定为一个参数,这个参数类型可以用在类,接口,方法的
              创建中,分别称为泛型类,泛型接口,泛型方法
              泛型提供了自动装箱和拆箱功能
              泛型的好处:
              泛型的好处是在编译的时候会检查类型安全,并且所有的强制转换都是自动和隐式的,也提高代码的重用率

 java中的异常处理
 
           在java中异常分为
                   1.检查性异常:java.lang.Exception
                   2.运行期异常:java.lang.RuntimException
                   3.错误:java.lang.Error
           异常处理:
                   try(..)catch(Exception e){...}finally{}将异常发生点中断 并向外抛出异常
                   throws Exception 向外抛出异常谁接受谁处理
                   其中try catch中的finally中的语句无论有无发生异常都会被执行 但在4种情况中不会执行
                   1.finally中发生了异常 2.在前面的代码中使用了System.exit();3.程序所在线程死亡 4.关闭了cpu
          

  嗯 我的java基本知识点就写到着(以上全部为手打,自己总结的),后面还会总结io流 线程 网路编程...等

 

---------------------- android培训java培训、期待与您交流! ----------------------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值