#博学谷IT学习技术支持#
个人笔记后续会进行内容改进
一、数据类型变量
数据类型&常量&变量&
四类整数类型:byte、short、int、long
两类小数类型:double、float
字符类型:char
布尔类型:boolearn
字符串类型:String
常量:9、10 //可以理解为阿拉伯数字,这里不过多说明
变量:
//格式 数据类型 变量名 = 数据类型对应的值
二、类型转换
隐式转换&强制转换
转换这块,需要搞明白数据类型对应的内存占用大小。用下面这张图说明。对应的内存大小顺序就是:


注意:byte、short、char进行运算的时候。都会默认转换到int类型
隐式转换就是内存小的——内存大的
强制转换反过来,定义一个大内存的数据变量转到内存小的变量里。不过强制转换会存在精度丢失的问题。
三、运算符
算数运算&关系运算&赋值运算&自增自减运算&
逻辑运算&短路逻辑运算
三元运算
1)算术运算:+ , - ,* , / ,%
/*
算术运算的 + 号也可以用来拼接字符串
//System.out.println("你好" + "周一") //
*/
/*
/符号取商
%符号取余
5 /2 结果2
5 % 2 结果1
*/
/*
'a' -- 97 a-z是连续的,所以'b'对应的数值是98,'c'是99,依次递加
'A' -- 65 A-Z是连续的,所以'B'对应的数值是66,'C'是67,依次递加
'0' -- 48 0-9是连续的,所以'1'对应的数值是49,'2'是50,依次递加
*/
/*
数值拆分:
取一个三位数分别打印它的个、十、百分位的时候可以用到%
个位: 变量值 % 10;
十位:变量值 / 10 % 10;
百位:变量值 / 10 / 10 % 10;或者 变量值 /100;
*/
2)关系运算符: > ,< ,== ,<= ,>= ,!=
关系运算符结果只是true或者false
/*
2)和3)的 == & = 前者是关系运算,用来判断。后者是赋值,定义值。注意不要混淆
*/
3)赋值运算:+= , -= ,*= ,/= ,%= , = ,
4)自增自减运算: ++,--
自增自减符号单独使用的时候就按字面意思理解
参与别的操作的时候。比如赋值给另一个变量,
自增自减在后:会让自身变量先参与操作,后对进行自增自减
在前的话先自增自减然后再参与操作
/*
a=10; a=10;
b=a++ b=--a
sout(a+b); //这个输出的结果会是21 sout(a+b); //这个输出的结果会是18
*/
5)逻辑运算 & | ^ !
概念理解:
&:符号左右同时为true,结果结果才为true
|:符号左右一个为true,结果就为true
^:符号左右相同为false,不同为true。
!:取反来用。
/*
int a =1; int a =1;
int b =2; int b =2;
sout(a >b); //false sout( ! ( a > b ) ); //false 由于加!。结果就变成TRUE
*/
6)短路逻辑运算 && ||
&& :与逻辑运算的&用法相同。但是比前者多了一项功能。短路
符号左边为false,后续内容就不继续执行,直接返回flase
||:同上
符号左边为true,后续不执行。直接返回true
7)三元运算
//格式: a > b ? a:b
解析:如果a>b。那就是a大。把a的值进行后续操作。反之就是拿b的值进行操作。可以用来获取某个事物的最大值或者最小值。
(注意判断语句左右两端的值要和:左右两边的值一一对应
如果:a > b ? b:a这种格式的句子是不行的,具体自己操作
)