Java基础之数据类型及面试题
Java入门
还有一点没学完,继续补充
Java程序运行流程:.java文件--经Java编译器(javac)--形成 .class文件--进入JVM(类装载器-字节码校验器-解释器)运行程序
Java基础语法
/*多行注释
* 可以注释一段文字*/
//单行注释
标识符
-
标识符大小写敏感
-
非法标识符:123abc、-abc、#abc
-
关键字不能用作变量名或方法名
数据类型
-
基本类型
-
数值类型
-
整数类型
-
浮点类型
-
字符类型
-
char
-
-
-
boolean类型
-
true
-
false
-
//整数,各类型包含数字范围由byte-long依次增大
byte num1=10;
int num2=20;//最常用
short num3=30;
long num4=40L;//long类型在数字后加个L
//浮点数
float data1=1.1F;//float类型在数字后加个F
double data2=3.1415;
//字符
char name='a';//一个字母或一个字
//boolean
boolean f1=true;
boolean f2=false; -
-
引用类型
-
类
-
接口
-
数组
-
-
位(bit):是计算机内部数据存储的最小单位;字节(byte):是计算机数据处理的最基本单位
-
1bit=1位
-
1B(Byte)=8b
-
1024B=1KB
-
1024KB=1M
-
1024MB=1G
-
-
扩展,面试题
1.1
//整数拓展-进制:二进制 0b 八进制 0 十进制 十六进制 0x
int i1=10;
int i2=010;//八进制 0
int i3=0x10;//十六进制 0x
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
//结果:具体关于进制如何换算还有待学习
i1=10
i2=8
i3=16
1.2 避免使用float、double进行比较
a.一般的Float型数据和Double型数据只能用于科学计算或者工程计算,它们都有界限值,进行复杂的大数值运算时,精确度低,不适合用于商业运算
b.java.math.Bigdecimal类,支持任何精度的定点数,可以用于精确计算货币值。
float f=0.1f;
double b=1.0/10;
System.out.println(f==b);
//f=b=0.1,但是float和double获得的结果是有界限值,且二者精度不同,两者相比较不会相等
1.3所有的字符本质还是数字
public static void main(String[] args) {
char c1='a';
char c2='中';
System.out.println(c1);//c1=a
System.out.println((int)c1);//强制转换数据类型 c1=97
System.out.println(c2);//c2=中
System.out.println((int)c2);//c2=20013
//所有字符的本质还是数字
}
1.4转义字符
public static void main(String[] args) {
System.out.println("Hello\nWorld! " );
}
/*a.\n-----new line
b.\r-----return
c.\t-----tab 制表符 一个tab占四个空格 但实际空多少取决于上个单词占几个tab
d.\b-----backspace
e.\\代表一个反斜线\
...*/

浙公网安备 33010602011771号