Java入门基础语法

一、基础操作符

1.赋值与初始化

在声明一个变量后必须对其进行赋值或初始化,赋值可以在任意的程序段进行,初始化则是在第一次变量声明时进行,初始化只能一次,赋值能多次。赋值格式

:变量名 = 值

2.数学运算符

数学运算符就是+,-,*,/。

注意:Java中用双引号表示字符串,+号运算符用于字符串运算时被重载过,他会将字符串类型转化为非字符串类型,数值型直接转化为对应的字符串,

布尔型true转换为字符串true,对象则转化为表示对象内存地址的字符串。

3、递增与递减

Java还有++与--,他们置于变量前表示先赋值后加1,置于变量后表示先加1后赋值

3、关系运算符

关系运算符用于判断大小真假是否相等,返回布尔型。

4、逻辑运算符&&与||

5、位运算符

位运算符用于整数类型二进制运算,包括与运算符&、或运算符|、非运算符~、异或运算符^。与运算符会将整数类型转化为二进制,然后按位与运算。

8的二进制为1000,7的二进制为0111按位与后为0000及仍为0,按位或后为1111值为15,8按位非为-9,即7,8异或后为15

运算符 含义 语法 效果
<< 左移 a<<x 整数a按二进制左移x位
>> 右移 a>>x 整数a按二进制右移x位
& 位与 a&b 整数a和b按二进制对齐,按位进行与运算
除了11得1,其他均为0
| 位或 a|b 整数a和b按二进制对齐,按位进行或运算
除了00得0,其他均为1
^ 位异或 a^b 整数a和b按二进制对齐,按位进行异或运算
相同为0,不同为1
~ 位取反 ~a 整数a的二进制的每一位进行0变1,1变0的操作

6、位移运算符

<<与>>,i<<j表示会将i向左答复、移动j位,并将低位用0补全。

带符号的右移运算符>>则是根据数值的正负来扩展,如果值是正数一律添0,否则,一律添1.java还有一个不带正负号的右移运算符>>>,他一律用0

来填充高位,这是Java独有的。

这两个运算符在高级应用中不常用,但常有面试官问道:用高效的方法算出2的3次方的结果。解决方案是2<<2,即将2左移3位,就是8.

由于int型的范围是2的31次方减1,因此程序中标无穷大的数INF可以设置成(1<<31)-1,(必须加括号,因为位运算符的优先级小于算数运算符)

但是一般都用2的30次方减1,因为他可以避免相加超出int的范围。注意:如果把2的30次方减1写成二进制就是0x3fffffff 就是(1<<30)-1.

7.三目运算符。

条件判断语句?语句1:语句2

当条件判断语句为true是执行1,否则,执行2.

a==3?a=1:a=3

8.逗号运算符

逗号运算符用于隔开并列的表达式,这些并列表达式从左至右依次执行。

9.转型运算符

各种数据类型间可以相互转换,但是大数据范围的数字向小数值范围的数字转换必须先声明,即转型运算符“()”

注意:布尔类型不能转换为其他类型。

10.优先级问题。

常见面试题:

语句float f=3.1415是否正确?

错误,由于Java默认浮点型数据是double型,而浮点型的数据不能直接转换为float型,必须以显式声明的方式才可以。


猜你喜欢

转载自blog.csdn.net/shi201619616/article/details/78509349