java学习基础总结

1.java中变量按照数据类型类分类:基本数据类型  and  引用数据类型(数组&类&接口)
     >基本数据类型
        整型:byte(8bit) short int(默认类型)  long(数值末尾添加l/L)
        浮点型:float double(默认类型)
        字符型:char(' ',这里必须用单引号表示字符,js里面则没有具体要求)
        布尔值型: boolean(取值为true或者false,和js一样)
2.进制
       十进制  二进制 八进制 十六进制
        >二进制:计算机底层都是用二进制来存储,运算的
        >二进制在底层存储:正数,负数都是以补码的形式存储和计算的(原码,反码,补码)
        >四种进制间的转换
3.变量的运算
       a.自动类型转换:容量小的数据类型自动转换为容量大的数据类型
          short s=12;
          int  i = s +2;
        ps:byte short char 之间做运算,结果为int型!所以,s+2,一定为int类型
       b.强制类型转换:是a的逆过程,使用"()"实现强转.
运算符是一种特殊的符号,用以表示数据的运算,赋值和比较等.
算术运算符:
+ - +- * / % ++ -- 
ps:  1) /: int i = 12 ; i = i / 5;   //i=2
       2)%: 最后的符号只跟被模数相同
       3)前++: 先+1,后运算  后++:先运算,后+1
       4)+: String 字符串与其他数据类型只能做连接运算,且结果为String类型
赋值运算符:
= += -= *= /= %= int i=12; i=i*5; i*=5; // 同上 [特别的] short s=10; s=s+5; //编译会报错,这里生成的s应该为int 型 s=(short)(s+5); // ok s+=5; // s=s+5,但是这里编译不会报错,这种写法不会改变s的数据类型

比较运算符(关系运算符)
== > < >= <= instanceof

ps:== 和=的区别
进行比较运算操作以后,返回一个boolean类型的值
if(i>1&&i<10){} //ok
不能写成if(1<i<10){}
逻辑运算符(运算符的两端是boolean值)
& && | || ^(亦或,相同取零,不同取一) !
ps:区分&和&&的区别,以及|与||的区别
我们使用的时候,选择&&,||

位运算符(两端是数值类型的数据)
<< >> >>> & | ^ ~(取反)
ps:1)这里左移,右移,移动的是二进制的补码,最后结果根据二进制的变化而定,
2)>>,右移,左边以该数的符号位进行补充,右边移除的部分被抛弃
3)>>>也表示右移,但是左边无符号右移

[例子]1.如何转换m=12和n=5的值
2.将60转换为16进制的输出

三元运算符
(条件表达式)?表达式1:表达式2;
1)既然是运算符,一定会返回一个结果,并且结果的数据类型与表达式1,2类型一致
2)表达式1与表达式2的数据类型一致
3)使用三元运算符的,一定可以转换为if-else,反之不一定
例子:获取两个数的较大值;获取三个数的最大值.
不积小流,无以成江河!记住一万个小时定律!
原文地址:https://www.cnblogs.com/Ed-song/p/8097665.html