《写给大忙人看的Java核心技术》读书笔记

来源:互联网 发布:魅族note6网络频段 编辑:程序博客网 时间:2024/05/18 12:04

1基本的编程结构

  • 1.2.1 整型的的范围不依赖程序所运行的机器。
  • 1.2.1整型的赋值可以给数字添加下划线,例如1_000_000表示一百万,下划线阅读起来更容易,Java编译器会直接删除它们

    int i = 10_8_9;
    long l = 8_09_9L;
    short s = (short)10_00;
    byte b = 1_1_9;

  • 1.3.2 java变量,方法或类的命名必须以字母开始,由任意字母数字符号_与$组成(不能使用其他符号和空格),但是$事专门在自动产生的名称中,你不该使用它。

  • 1.4.5 逻辑操作符的“捷径”评估,其他书中也有介绍的短路效果,第一个条件满足(或不满足)第二个条件不进行判断

    n!=0 &&s+(100-s)/n //如果n!=0不为真 ,后面的也就没有必要判断了,
    n==0||s+(100-s)/n //如果第一个条件为真,后面也就没必要判断了

  • 1.4.5 逻辑操作符与比特位操作符

    • 1 &(与),|(或),^(非)应用到boolean判断时,不具备“捷径”评估,两个操作数都会强制评估
    • 2 更常见的,是作为二进制数与整数的位模式上操作, // 0xF的二进制是0…01111,n^0xF 表示取n的最末四位 ;n = n|0xF 表示将n最低四位设为1,n = n^0xF 表示将n按0xF的值取反。
    • 3 算术位移操作符,>>(以0替换前面的位0xF>>2=0…01100);>>>(将符号位扩展为最前面的位),常用于简单常量的存储,节省空间。
  • 1.4.6 大数

      BigInteger bi = BigInteger.valueOf(101928367820283739L);//可用于无限长度的整型数  BigDecimal bd = BigDecimal.valueOf(19832728291928331928392d);//可用于定义无限精度的浮点数

    //类对象不支持直接使用计算操作符
    // BigDecimal next =new BigDecimal(l)+bd ; // errer The operator + is undefined for the argument type(s) BigInteger, BigDecimal
    BigDecimal next = bd.multiply(bd.add(BigDecimal.valueOf(l)));
    //next = 3.93337111501454592485184483943890000000E+44

  • 1.5.3 字符串判空 一般使用Apache的StringUtils.isNotBlank(str) ,str为null或“”均返回FALSE;
  • 字符串比较不能用“==”的原因,String 作为类对象,“==”比较的是地址,存放在堆内存中的地址,如果两对象指向堆中同一个对象,方能TRUE。
  • 1.5.3 字符串的比较System.out.println(“compareTo “+(“TIANtang”.compareTo(STR_3))); //返回第一个差别字符的Unicode差值 T-t 等于-32
  • 1.6.1 System 输入输出
    Scanner in = new Scanner( System.in);
    String name = in.nextline();//取整行输入
    String firstName = in.next();//取单个单词,空格分隔的;
    int age = in,nextInt();//取整数,类似的有nextDouble(),也可有对应的hasNextXXX()方法检查
    System.out.printf(“%8.2f”,1000.0/3.0);//%8.2f表示浮点数宽度为8,精度为小数点后2位
    System.out.printf(“Hello,%s. next year you’ll be %d. \n”,name,age);//类似win cmd和Linux的 转换字符,%s.表示对应位置的string,f是float,前面加2表示精度为2,d是十进制整数……

0占坑!持续更新

  • 列表内容
      -
  • 列表内容
      -
0 0
原创粉丝点击