目录
前言
B站笔记,不是很完善;
这里简单了java变量8个基本类型,与一点基本用法。
一、变量的基本类型
Java的基本变量不受OS的影响。
Byte 1字节 范围是-128到127共2 * 2^7 = 2^8位数//1B = 8b;存放128这个数超出范围会报错。
Short 2字节 范围位-2^15到2^15-1,
Int 4字节 范围位 -2^(4*8-1)到2^(4*8-1)-1,
Long 8字节 范围是-2^(8*8-1)到2^(8*8-1)-1,注意长整型long 8字节需要再后面声明l or L。
float 4字节,范围-3.403E38~3.403E38,科学计数法表示 a×10^b = aEb,后面需要加f or F float f1 = 3.14F;浮点数 = 符号位 + 指数位 + 尾数位。尾数位部分可能丢失,造成精度损失。
Double 8字节 范围-1.798E308~1.798E308,比float更加精确,所以通常作为默认浮点数类型
二、使用细节
1.float使用注意
浮点数 = 符号位 + 指数位+尾数位
class FloatTest{
public static void main(String[] args) {
double f1 = 2.7;
double f2 = 8.1/3;
//错误写法
if (f1 == f2)
System.out.println("f1与f3相等");
else
System.out.println("f1与f3不相等");
//正确写法
if(Math.abs(f1 - f2) < 0.0001)
System.out.println("差值很小,认为相等");
}
}
// 输出结果
// f1与f3不相等
// 差值很小,认为相等
对运算后个浮点数再次运算运算非常危险,会丢失精度,注意。
2.char类型
本质是存储一个整数,,将字符转换成整数在转换成二进制存储在计算机中,使用是在将此调出
使用例句
char c1 = ‘a’;
Char c1 = ‘\t’; //回车
Char c3 = ‘韩’;
Char c4 = 97;//可以直接赋值,对应Unicode码的97的符号a
注意,字符将使用英文输入状态下的 ' ' 括起来,
3.boolean使用
只有TRUE 和FALSE;
用于控制if语句和循环语句;
代码:
Boolean isPass = true;
If(isPass == true){
System.out.println(“考试通过”);
}
else{
System.out.println(“考试不通过”);
}
//输出结果为
//考试通过
3.变量自动转换
1.有多个类型进行混合运算时候,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行运算
Int n1 = 10;
Float d1 = n1 + 1.1; //error 1.1 is double;
Double d1 = n1 + 1.1;// true 1.1 is double;
Float d1 = n1 + 1.1f;// true
2.将高精度赋值低精度会报错
Int n1 = 1.1;//error
3.byte short char 之间不是进行自动转换
Byte b1 = 10;
Char c1 = b1; //error
4.short byte and char 之间进行运算会首先转成int
Short s1 = 1;
Byte b1 = 2;
Char c1 = 3;
Int i1 = s1 + b1 + c1;//正确
5.Boolean不参与转换
三、String字符串转换
将数字定义成字符串类型
Int n1 = 10;
String str1 = n1 + "";
String 转换成数值类型
通过调用包类调用parseXX方法,将字符串类型转换成int float double 等
Integer.parseInt("123");
Float.parseFloat("123.45");
Double.parseDouble("123.1");
Short.parseShout("12");
Long.parseLong("12345");
Boolean.parseBoolen("true");//将字符串型true转换成Boolean类型的true
代码举例
String str1 = “122”;//单引号是char类型
Int n1 = Integer.parseInt(str1);
System.out.println(n1);
除了int类型基本语法都是变量类型.parse变量类型(“数字”);
123可以转换成,但hello不能,转换时确定转换时是有效的数据;
四、网址
老师视频网址 B站韩顺平30天学java