自己用
文章目录
Java基础-01
导包
import 要导入的包
变量
格式: 数据类型 变量名 = 数据值
数据类型:限定了变量能存储数据的类型
变量名:就是存储空间的名字
数据值:要赋给变量的数据
等号:赋值。把右边的数据值赋值
给左边的变量
键盘输入
创建Scanner对象,并导入Scanner使用所需要的包(Java里面默认是没有Scanner这个对象的)
-
Scanner scan = new Scanner(System.in);
-
scan.nextInt();用于接受整型,返还int类型数据
scan .next();用于接受字符串类型,返还字符串类型数据
scan .nextDouble();用于接受浮点型,返还double类型数据
scan .nextBoolean();用于接受布尔类型,返还布尔类型数据
数据类型的分类
JAVA 语言是强类型语言,对于每一种数据都定义了明确的具体数据类型。
基本数据类型
字节表示内存中的存储单位
整数
-
byte:-128~127 1字节
-
short:-32768~32767
-
int(默认):-2147483648~2147483647(10位数)
-
long:-9223372036854775808~92233720368547775807(19位数)
浮点数:
-
float:-3.401298e-38~3.402823e+38
-
double(默认): -4.9000000e-324~1.797693e+308
字符:
- char : 0~65535
布尔:
- bool: true, false
类型 | 占用存储空间 | 类的范围 |
---|---|---|
byte | 1字节 | -128~127 |
short | 2字节 | -32768~32767 |
int | 4字节 | -2147483648~2147483647(10位数) |
long | 8字节 | -9223372036854775808~92233720368547775807(19位数) |
float | 4字节 | 3.401298e-38~3.402823e+38 |
double | 8字节 | -4.9000000e-324~1.797693e+308 |
char | 2字节 | 0~65535 |
boolean | 1字节 | true, false |
知识点:
-
byte的取值范围
-
基本数据类型的四类八种
-
char类型在声明字符变量时,用单引号括起来
-
整数和小数取值范围大小关系:
double>float>long>int>short>byte
-
long类型变量:需要加L后缀(大小写均可)
float类型变量:需要加F后缀(大小写均可)
引用数据类型
class(类),接口(interface),数组
类型转换
强转
大转小,但是他一般都会有数据丢失。
int a = (要强转的数据类型)10.1;
例如:int a = (int)10.1;
输出结果为 10 。
隐式类型转换
小转大
标识符(未写)
运算符
Java中的运算:
算术运算,赋值运算,比较运算,逻辑运算,位运算,三元运算。
算术运算符
运算符号: + - * (×) / (÷) % (算余数 模运算) ++(自增) --(自减)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mIwODzQn-1664872616509)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827132842237.png)]
在java中进行算术运算,运算符两侧的类型一致的时候,运算的结果必须和与运算的数据类型保持一致。当算数运算两侧的类型不一致的时候,结果向大的保持一致。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2aY0OngP-1664872616511)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827134131982.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VfBhZ5rl-1664872616513)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827134139755.png)]
数值拆分
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AAODg45b-1664872616514)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827135850800.png)]
自增自减
Java中 ++ (自增), – (自减)
当自加、自减出现的时候,需要给它们所在的那个变量空间中加 1 或者 减 1.
表现形式:i++, ++i, j–, --j
int a = 10;
a++;
//表示把变量+1
System.out.println(a);//11;
++a;//表示把变量+1 =>12
a--;//表示把变量-1 =>11
--a;//表示把变量-1 =>10
应用场景
int a = 10;
int b = a++;
int c = 10;
int d = ++c;
System.out.println(b);//10
System.out.println(d);//11
int a = 10;
int b = a++;
int c = ++a;
System.out.println(b);//
System.out.println(c);//
赋值运算符
赋值运算符符号: =
说明:它的功能是把右侧的结果,赋值给左侧的变量空间中。
例:int a = 10 ,把10赋值给a
扩展:
+= -= *= /= %= 称为算术运算和赋值运算的混合运算。
例:a+=b, 将a+b 赋值给 a
a+=b 相当于 a=a+b
混合运算的好处:可以自动类型转换(强转)
例:
byte b = 3;
//b = b + 3; //报错
b += 3;
b += 3 等同于 b = (byte)(b + 3)
关系运算符
运算符号:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JVqkWl5Z-1664872616515)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827145944015.png)]
逻辑运算符
逻辑运算符分类:
&(与):并且,两边都为真,结果为真。两边只要有一遍为true, 结果就是true
&(与)
|(或):或者,两边都为假,结果为假。一边为false,结果就是false
^(异或):相同为false,不同为true
! (非):取反
非短路运算符
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eZMj0P06-1664872616516)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827152213794.png)]
短路运算符
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ECP1AphF-1664872616518)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827152204093.png)]
例:
//短路运算符
int a = 3;
int b = 3;
int c = 3 ;
System.out.println(a==2&&b ==(c=1));
System.out.println(c);
//非短路运算符
int a = 3;
int b = 3;
int c = 3 ;
System.out.println(a==2&b ==(c=1));
System.out.println(c);
位运算符
运算符符号:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MhKL6n3b-1664872616520)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827160912857.png)]
运算规则:
负数的位运算左移,右移
获得负数的反码+1(补码),右移或左移,然后-1获得其反码(也就是负数右移后的反码),然后取得原码。
正数的原码反码补码一样。
负数: 反码=》原码取反符号位不变, 补码:反码+1
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7r4shFJ7-1664872616523)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827161648303.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xGbsgxh4-1664872616524)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827161922367.png)]
三元运算符
条件表达式 1 ? 表达式 2: 表达式 3
运算规则:
条件表达式1 的运算结果 必须是 boolean 型数据,通过运算结果去判断执行 表达式2 或表达式3
当条件表达式 1 为 true,则执行 表达式2
当条件表达式 1 为 false,则执行 表达式3
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5AkEevXB-1664872616525)(C:\Users\大帥哥\AppData\Roaming\Typora\typora-user-images\image-20220827162454484.png)]
总结
基本数据类型