JDk环境变量的配置以及其意义
- JAVA_HOME:指向JDK的安装目录,使eclipse、tomcat等软件通过该变量找到JDK
- Path:Java-->JDK-->bin目录,支持DOC命令行下执行Javac编译器和Java解释器 等可执行文件
- ClassPath:Java-->JDK-->Lib目录,主要是使用Java的类库。
- 新建->变量名"JAVA_HOME",变量值"C:\Java\jdk1.8.0_05"(即JDK的安装路径)
- 编辑->变量名"Path",在原变量值的最后面加上“==;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin==”
- 新建->变量名“CLASSPATH”,变量值“==.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar==”
- CLASSPATH .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
- JAVA_HOME D:\Program IDE\JDK6
- Path ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 或者是直接“%JAVA_HOME%\bin;
注意:==JDK5.0以上版本,可以不配置classpath变量。==
以上配置为永久环境变量配置。一般配置到自己的电脑上。如果在别人电脑上运行项目需要切换JDK,可以设置临时环境变量:(临时变量的配置方法,仅仅适用于当前DOS窗口) 打开DOS窗口--》set path(查看环境变量)--》set path=临时路径(打开新的DOS窗口后path变量还是原来的路径) set path = 临时路径;%path% 在原来path路径的基础上增加新的路径。
==验证环境:打开DOS窗口 运行--> cmd; 输入命令:Java -version==
Java标识符的命名规则
- 标识符可以由 字母、下划线、美元符号$、数字组成。(不能包含@%空格等其它特殊字符,不能以数字开头)
- 不能是Java的关键字和保留字,但可以包含
- 严格区分大小写
- 标识符命名最好能反应其作用
数据类型
Java 强制数据类型,加强了健壮性。
引用数据类型
- 类 class
- 接口 interface
- 数组 Array
基础数据类型
==数据类型分为四类八种==
| 数据类型 | 内存 | 默认值 |
|---|---|---|
| byte | 8位 | 0 |
| short | 16位 | 0 |
| int | 32位 | 0 |
| long | 64位 | 0L |
| float | 32位 | 0.0f |
| double | 64位 | 0.0d |
| char | 16位 | \u0000 |
| boolean | 8位 | false |
整数型
byte、short、int、long
浮点型
float:单精度浮点型 double:双精度浮点型
字符型
char类型是一个单一的16位Unicode字符,最小值是 \u0000 (就是0),最大值 \uffff (就是65535)
布尔型
只有个两个值true、false。默认false。只有1位
数据类型之间的转换
自动转换,由低精度转向高精度 强制转换,由高精度转向低精度(容易失去精度)
运算符
赋值运算符 =
把等号右边的值赋值给左边,右边可以是任何常量,变量,表达式。
int a = 4;
算数运算符
- +:加
- -:减
- *:乘
- /:除
- %:取余 ==算数运算符需要注意优先级==
自增 自减运算符
public static void main(String[] args) {
int a = 5;
int b = ++a;
int c = a++;
System.out.println("b:"+b);
System.out.println("c:"+c);
System.out.println("a:"+a);
int aa = 10;
int bb = --a;
int cc = a--;
System.out.println("bb:"+bb);
System.out.println("cc:"+cc);
System.out.println("aa:"+aa);
}
输出:
b:6
c:6
a:7
bb:6
cc:6
aa:10
比较运算符
左右值比较大小,返回boolean类型
>:大于
<:小于
==:等于
>=:大于等于
<=:小于等于
!=:不等于
逻辑运算符 与、或、非
左边的Boolean和右边的Boolean类型对比
&&:短路与(左右均为true,则返回true,左边为false,右边表达式不必执行)
||:短路或(左右均为false,则返回false,左边为true,右边表达式不必执行)
!:逻辑非(true变false,false变true)
&:逻辑与(当且仅当,左右均为true时,返回true)
|:逻辑或(当且仅当,左右均为false时,返回false)
^:逻辑异或(左右相同,返回false,左右不同,返回false。true^false为true,true^true为false,false^false为false)
==按位运算符==
按位运算符用来操作整数基本类型的每个比特位,即二进制。 按操作符对两个参数中对应的位执行布尔运算符,最终生成一个结果。
按位与 &
public static void main(String[] args) {
System.out.println(Integer.toBinaryString(4));
System.out.println(Integer.toBinaryString(5));
System.out.println(4&5);
}
结果:二进制4为100,二进制5为101, 1&1=1 0&0=0 0&1=0 结果的二进制为100,就是十进制的4
100
101
4
按位或 |
二进制4为100,二进制5为101, 1|1=1 0|0=0 0|1=1 结果的二进制为101,就是十进制的5
按位非 ~
参考:blog.csdn.net/cyb_23/arti…
从图不难看出,原码 --取反-> 反码 --加1-> 补码 --取反-> 按位非值;那如果是正数按位非呢,反推估计就行了的!
得出的口诀就是(不知道对不对,也没验证):数值(正数、负数)加1取反;如-5按位非:-5 + 1为-4,取反为4;6按位非:6+1为7,取反为-7;
按位异或 ^
二进制4为100,二进制5为101, 1^1=0 0^0=0 0^1=1 结果的二进制为1,就是十进制的1
移位运算符
>>:右移运算符(右移1位 除2,右移2位 除2*2)
<<:左移运算符(左移1位 乘2,左移2位 乘2*2)
8>>1=4
8>>2=2
8<<1=16
三元运算符 ?:
条件表达式?表达式1: 表达式2
条件表达式为true,则返回 表达式1
条件表达式为false,则返回 表达式2