zoukankan      html  css  js  c++  java
  • Java学习第二天总结(基本知识点:)

    基本知识点:

    1、局部变量无默认值,成员变量有; 2、java是强类型语言,必须先声明类型,再使用;指定类型的变量只能接受与之相匹配的类型的值;

    3、声明long型常量须加“L”或“l",long lo=34567890;错误,因为34567890默认为int型,而该值超出int类型范围;

    4、整数默认为int型,小数默认为double型

    5、字符常量是用英文的单引号(' ')括起来的单个字符(英文、中文、数字等);

    6、ASCII码:对英语字符与二进制位之间的关系,做的统一规定。总共有128个字符编码;Unicode、UTF-8是不断完善的;

         UTF-8:1-6个字节;

    7、基本数据类型转换:

         byte、short、char之间不会相互转换。他们三则在计算时首先转换成int类型。

    8、当把任意基本类型的值和字符串值进行连接运算时(+),基本类型的值将自动转化为字符串型;+连接的基本类型左右都无字符串时(看运算结果),进行+运算;如:

           5+5+“hello”=10hello
           "hello"+5+5=hello55

    9、强制类型转换:自动类型转换的逆操作,将容量大的数据类型转换为容量小的数据类型,使用时需要加上强制类型转换符(),

       强制类型转换时:大范围-->小范围,高位数被截取掉。

      基本数据类型的自动类型转换:从小范围-->大范围

    10、通常,字符串不能直接转换为基本类型,但通过基本类型对应的包装类可以实现把字符串转换为基本类型,如:

    11、基本数据类型中除了boolean类型外,各种类型都能够相互转换;但分为自动类型转换和强制类型转换;//注意,long型转换为float型不需要进行强转,但是会丢失精度。

       强制类型转换默认截取高位;

    12、进制分类接特征:

    二进制:0.1;满2进1,以0b或0B开头
    八进制:0-7,满8进1,以数字0开头
    十六进制:0-9及A-F满16进1,以0x或0X开头表示

    13、二进制负数在计算机表现形式方法:各位正数位数取反(0-->1,1-->0))+1

    14、负数的补码是:从其正数源码右边第一个不为0的数字保留,其余的位全取反;

    15、补码的作用:在底层的存储方式;计算机以补码的形式保存所有的整数

           所有数字在计算机底层都以二进制形式存在。

    16、补码原则:正数的原码、反码、补码都相同;负数的补码是其反码加1(对应正数的原码右起第一个不为0的保留,其余全取反);

    17、符号位:二进制表示形式的最高位是符号位;Java整数常量默认是int类型,其第32位是符号位;当是long类型时,二进制默认占64位,第64位是符号位。

    18、 各种进制之间相互转换方法
     
    十进制转换成任何进制:以该数除以相应的进制数,然后将商+余数进行倒排 任何进制数转换成十进制数:用相应位上的数乘以权(权=进制数的幂,幂以0向左开始排列),然后相加; 0x63 --> 十进制?
    二进制转八进制:每三位化为一组,求出改组的十进制数,然后把各组数从右到左排列即可,转换成一个八进制数
    八进制转二进制:把每一个八进制数都转换成三位的二进制数,然后从右到左排列;
    二进制和十六进制:每4位化为一组,求出改组的十进制数,然后把各组数从右到左排列即可,转换成一个八进制数
    十六进制转二进制把每一个十六进制数都转换成四位的二进制数,然后从右到左排列;
    八进制和十六进制:先转换成二进制,然后再转换为对应进制。

    19、根据二进制数求对应的整数

    先观察最高的符号位:
    1、正数按照二进制转十进制方式即可;
    2、负数先求对应正数的原码,然后右起第一个不为0的保留,其余全取反,即可得到此负数的值

    20、取模:%:取余数. 结果的符号取决于被模数,不论模数是正是负

             int i1 = 12 % 5;  (+)
          int i2 = -12 % 5;  (-)
          int i3 = 12 % (-5);  (+)
          int i4 = -12 % (-5);  (-)

    21、前++:先自增1,后做运算 ;后++:先做运算,后自增1

    22、位移运算符共7种:右移、左移,无符号移动、与运算、或运算、异或运算、反码;有符号右移:向右移动几位,左边根据最高位值填充相应的位移个数;无符号位移:无论向右移动几位,左边都用0进行填充。

    23、int i=10; i  +=0.1;结果i= 10,够保持i的类型不变;

       java中取反(位运算)~

    24、比较运算符(7种)

     
      比较运算符的结果都是boolean型,要么是true,要么是false。

    25、逻辑运算符(6种)

        &   —逻辑与      |     —逻辑或        !   —逻辑非

        && —短路与      ||    —短路或        ^   —逻辑异或

        逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 。

        “&”和“&&”的区别:

         单&时,左边无论真假,右边都进行运算;

         双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

        “|”和“||”的区别同理,||表示:当左边为真,右边不参与运算。

        异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false。

        异或,追求的是“异”!

    26、位运算符有7种

      

            左移的操作始终以0补位。

         右移的操作>>>以0补位,>>以符号位补位。

         正数的>>>  和  >> 相同位数的话,结果相同

         负数的>> 始终为负数,>>>始终为正数。

    27、赋值运算

        1.赋值运算符 = ,常用来对变量赋值,赋值语句本身是有值的。

        2.赋值语句的执行顺序是: 从右到左

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

        特点:不改变操作数的类型

  • 相关阅读:
    5种排序算法
    Numpy 基础
    Git 帮助
    SpringBoot巧用 @Async 提升API接口并发能力
    延时队列实现的方式总结
    Spring Boot 进行优雅的字段校验
    分布式搜索引擎Elasticsearch的架构分析
    Redis 使用规范
    Intellij IDEA远程debug线上项目记录
    领域驱动设计:领域接口化设计
  • 原文地址:https://www.cnblogs.com/yihaifutai/p/6561827.html
Copyright © 2011-2022 走看看