java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

一:jdk7新特性

可以表示二进制数值,以0b开头,中间可以使用下划线_分隔符。如下:

 @Test
/**
* 测试jdk新特性
*/
public void testJdk7(){
int a=0b00000000000000000000000000000011;
int b=0b0000_0000_0000_0000_0000_0000_0000_0011
System.out.println("a="+a+"\n"+"b="+b);
}

二:变量

1:java是一种强类型语言,每个变量都需要声明类型,相反js就是弱类型语言,只有一个数据类型

var。

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

2:局部变量和成员变量

局部变量:定义在方法中或者代码块中(for循环或者if循环等),必须先声明,初始化之后才能够使用。

成员变量:定义在类中

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

3:命令规则

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

三:常量

常量:顾名思义,数值不在变化的量就是常量。使用final修饰,而且只能初始化一次。

注意:常量标识符要大写,如果是二个或者以上单词,使用下划线_作拼接。

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

四:运算符

运算符包括算术运算符、逻辑运算符、条件运算符、赋值运算符、扩展运算符等

1:算术运算符

包括 加+、减-、乘*、除/、取余%、++、--。

这里需要注意 ++和--,如果++放在前面,就是先自加(减),再运算;如果放在后面,就是

先运算再自加(减)。

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

2:逻辑运算符

&&:与,只要有一个false,则结果为false;

||:或,只要有一个true,则结果为true;

这里短路比较重要!!

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

3:位运算符

位运算符也可以进行逻辑运算,同时还可以进行位运算

异或:不同时则为1,相同则为0

取反:~8 = -9 ,刚开始有点困惑,这里面涉及到计算机的基础知识,源码、反码以及补码,

在计算机中数值是以补码的形式存放,如果是正数,那么源码和补码相同;如果是负数,那么

就是源码取反加1;

8的源码:

0000 0000 0000 0000 0000 0000 0000 1000

取反后:

1111 1111 1111 1111 1111 1111 1111 0111

得到的数值首字母为1,则是负数,所以以补码的形式存放,想得到它的源码,那么就要逆向而行了,减1取反

减1后:

1111 1111 1111 1111 1111 1111 1111 0110

取反:

1000 0000 0000 0000 0000 0000 0000 1001

得到:-9

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

4:扩展运算

+= 、-=、*=、/=、%=

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

5:字符串连接符 +

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

6:三目运算符

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

7:运算符的优先级

java基础学习总结三(jdk7新特性、变量(局部变量和成员变量)、常量以及运算符)

上一篇:Python3 tkinter基础 Label pack 设置控件在窗体中的位置


下一篇:Access restriction: The type 'BASE64Encoder'