《写给大忙人看的java》笔记--基本的编程结构

1.字符串是UTF-16编码中的Unicode编码点的序列

2.绑定System.in的Scanner可以读取终端输入:

Scanner sc = new Scanner(System.in);

 

3.java不是用来快速完成几个命令的脚本语言,它明确定位为可以从组织有序的类和包中获益的大型编程语言。

4.编译命令:javac ch01/sec01/HelloWorld.java

运行命令:java ch01.sec01.HelloWorld

5.java.lang.System.out    out是一个PrintStream实例

6.随机数 new Random().nextInt()

7.基本数据类型的使用规则,巨大多数情况下,用int

存储空间宝贵的底层文件处理或者大数组中,用byte和short

很大的数字,超过20亿,用long,如果还不够,用BigInteger

8.二进制以0b为前缀,八进制以0为前缀,十六进制以0x位前缀

主动转换的方法如下

二进制Long.toBinaryString(m)

八进制Long.toOctalString(m)

十进制Long.toString(m)

十六进制Long.toHexString(m)

任意进制Long.toString(m , n)//n代表进制数,n的范围是2~36

9.float 6位有效的小数位数,double 15位有效的小数位数

浮点数不适合做金融计算,因为没有精确的表示,可以用BigDecimal类

10.char描述了Java使用的UTF-16字符编码中的编码单元,使用16进制表示时,要加前缀\u,另外,char类型包含部分笑脸☺等符号。

通过反斜杠\转义单引号和转义反斜杠

11.布尔类型不是数字类型,与整数0、1没有关系

12.尽肯能晚的声明变量,刚好在你首次需要变量的前一刻声明,被认为是一种好习惯

13.延迟final变量的初始化时允许的。

 14.Math方法

Math.pow(x,y)产生x的y次方

Math.sqrt(x)开方

比较大小Math.min和Math.max

可抛出异常的乘法Math.multiplyExact(1_000_000_000,2),值大于20亿,抛出异常

类似的还有其他加减乘除

严格要求可重现的浮点运算:StrictMath类提供了严格实现的数学方法

14.数字类型转换的顺序 : double > float > long > int

15.强转换时的警告

long m = 10L;

int n = (int)m;//没有警告

long m2 = 1000000000000;

int n2 = (int)m2;//有警告,此时用Math.toIntExact方法代替,无法转换时,会报异常

16.大数

BigInteger类实现了任意精度的整数计算,

BigDecimal类对浮点数有同样的实现

17.将整数字符串转为数字,用Integer.parseInt(str);等类似方法

18.String的常用方法

boolean equalsIgnoreCase(String str)  忽略大小写的比较

 

 

 19.格式化输出

System.out.printf("hello,","%sword%d.\n","beautiful ",666);//输出:hello,beautiful world666.

String.format()创建不打印输出的字符串

20.switch的case的值为整数,字符串,枚举类型值

21.构造数组时,数字类型默认填充0,Boolean类型默认填充false,对象类型默认填充null

22.this引用

23.java中,包不能嵌套

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2017-07-05 23:57  lakeslove  阅读(181)  评论(0编辑  收藏  举报