java中的转义字符
\t 是单个字符 不属于字符串 表示制表符tab \表示转意
println 和 print的区别 不加ln直接打印,不会换行 ln就是换行
\n 表示换行
print(' \ ')会把第二个单引号转义,导致报错
\u 表示 \u4e2d 表示为Unicode编码 是16进制 为‘中 ’
八进制010 为 8
十六进制 0x10 为 16
二进制 0b10 为 2
再任何情况下,,整数型的字面量默认被当做int类型处理,
要是希望被当做long类型来处理,需要在字面量后面加L或者l
int 2147483647最大
自动类型转换,小容量变成大容量 long = 200会自动转化 **********大容量怎么变小容量 直接转化会编译报错,‘存在损失’ 需要强制类型转化符,注意强制类型可以编译通过,但是运行时会有精度损失
强制类型转化符 直接在数据前面加int a = (int)x x为大容量数据 会自动砍掉前面四个字节的数据
long = 100L 也不存在类型转换
long e=2147483648 会报错 整数太大,因为数字会当成int处理 加L可以解决
******重要语法规则。整数字面量要是不超过byte(short)(char)的范围。会编译通过能执行 就是说127内 不用再数值前面加(byte)(short)(char) short也是可以的 char 65535
char c2 = 97 输出为英文字母a 所以允许的 所以会 1 自动转成字符型 【0-65535】没有超出取值范围可以直接强转
****计算机在底层存储内容,一律为二进制的*******补码*******形式 为什么用补码,因为效率最高????
反码 补码
***********对于一个正数来说,三码一样
********负数 三者间的关系,,原码, 反码为 符号位不变,其余位取反 补码为反码加1 例10000001 11111110 11111111
例子 byte b = (byte)150 其输出结果为-106
char类型和byte可以相加
byte,short, char做混合运算时,各自先转换成int再做运算,,,
*******多种数据类型做混合运算时,最终的结果是最大容量的对应的类型(byte,short, char) 除外,会转成int
浮点型 float 4 double 8 财务软件的时候有java,math,BigDecimal
**************************任意一个浮点型都比整数型的空间大
java中浮点数默认用double
想变float 则前加F或者f
boolean不能转换