logo头像
Snippet 博客主题

Java基础

JAVA基础

1. Java 基本数据类型

Java内置8种基本类型 -> 6种数字类型 -> 4种整数类型: byte, short, int, long

类型 位数 最小值 最大值 默认值 其他
byte 8 -128(-2^7) 127(2^7-1) 0 有符号、二进制补码表示
short 16 -32768(-2^15) 32767(2^15-1) 0 有符号、二进制补码表示
int 32 -2^31 2^31-1 0 有符号、二进制补码表示
long 64 -2^63 2^63-1 0L(0l) 有符号、二进制补码表示
float 32 2^(-149) 2^128-1 0.0f 单精度、IEEE754标准
double 64 2^(-1074) 2^1024-1 0.0d 双精度、IEEE754标准
char 16 \u0000(0) \uffff(65535) \u0000(0) 单一的、Unicode字符

2. 浮点数内存结构

类型 位数 符号位 指数位 尾数位
float 32 1 8 23
double 64 1 11 52

3. 数组

数组创建

1
2
3
4
int[] arr1 = {1,2,3,4};             //正确
int[] arr2 = new int[4]; //正确
int[] arr3 = new int[]{1,2,3,4}; //正确
int[] arr4 = new int[4]{1,2,3,4};s //错误,编译不通过
  1. 数组的指针问题

    拷贝数组时候注意

4. String

数组创建

1
2
3
String s1="ss";                 //先将"ss"存储在池中,然后返回引用
String s2=new String("ss"); //创建新对象,使用的"ss"已经在池中
String s3="Prog"+"gramming"; //创建3个对象,均存储在池中
  1. 比较 == 和equlse()区别
  2. 创建方式 不同

5. StringBuilder/StringBuffer

  1. StringBuilder线程不安全,但效率高;
  2. StringBuffer线程安全,但效率低。
支付宝打赏 微信打赏

打赏