常用dos命令
回到根目录
cd / 或 cd \
切换到上一级
cd ..
切换盘符命令
(1)直接盘符:
例如:要切换到D盘,直接d:
(2)使用cd命令
例如:要切换到E盘,可以使用cd /D e:
新建目录命令:md (make directory)
在当前目录下创建hello文件夹 md hello
在当前目录下创建a,b,c三个文件夹 md a b c
在d盘test200下创建ok200文件 md d:\test200\ok200
新建空文件命令:type nul
type nul > 文件名.扩展名
追加内容到文件命令:echo
echo 内容 > 文件名.扩展名
复制(copy)或移动(move)文件
copy 源文件 目标目录\新文件名.扩展名 move 源文件 目标目录
删除文件命令:del
删除指定文件 del 文件名.扩展名 del 目标目录\文件名.扩展名 删除所有文件并询问 del *.* 删除所有文件不询问 del /Q *.*
清屏命令:cls
cls
退出命令:exit
exit
配置环境变量
-
步骤:
-
打开桌面上的计算机,进入后在左侧找到
计算机
,单击鼠标右键
,选择属性
-
选择
高级系统设置
-
在
高级
选项卡,单击环境变量
-
在
系统变量
中,选中Path
环境变量,双击
或者点击编辑
: -
在变量值的最前面,键入
D:\develop\Java\jdk1.8.0_202\bin;
分号必须要写,而且还要是英文符号。 -
环境变量配置完成,重新开启DOS命令行,在任意目录下输入
javac
命令,运行成功。
-
基本数据类型
基本结构
public class HelloWorld {
public static void main(String[] args) {
System.out.println("HelloWorld");
}
}
HelloWorld案例常见错误
-
单词拼写问题
- 正确:class 错误:Class
- 正确:String 错误:string
- 正确:System 错误:system
- 正确:main 错误:mian
-
标点符号使用问题
- 不能用中文符号,英文半角的标点符号(正确)
- 括号问题,成对出现
注释
Java中有单行注释
、多行注释
和文档注释
-
单行注释以
//
开头,以换行
结束,格式如下:// 注释内容
-
多行注释以
/*
开头,以*/
结束,格式如下:/* 注释内容 */
注意:多行注释不能嵌套。
/* /* 错误的示范:这就是一个嵌套的多行注释 */ */
文档注释以
/**
开头,以*/
结束。文档注释也不能嵌套 -
/** 注释内容 */
关键字
变量
变量的声明的语法格式:
数据类型 变量名;
例如:
int age;
String name;
double weight;
char gender;
boolean isMarry;
long类型:如果赋值的常量整数超过int范围,那么需要在数字后面加L。
float类型:如果赋值为常量小数,那么需要在小数后面加F。
char类型:使用单引号''
String类型:使用双引号""
输出变量的值
System.out.println(age);
System.out.println(name);
System.out.println(weight);
System.out.println(gender);
System.out.println(isMarry);
字面值常量 | 举例 |
---|---|
字符串常量 | ”HelloWorld“ |
整数常量 | 12,-23 |
浮点常量 | 12.34 |
字符常量 | ‘a’,'0',‘沙’ |
布尔常量 | true,false |
空常量 | null |
进制的换算
十进制 | 二进制 | 八进制 | 十六进制 |
---|---|---|---|
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | a或A |
11 | 1011 | 13 | b或B |
12 | 1100 | 14 | c或C |
13 | 1101 | 15 | d或D |
14 | 1110 | 16 | e或E |
15 | 1111 | 17 | f或F |
16 | 10000 | 20 | 10 |
类型转换
自动类型转换
强制类型转换
转换格式:
数据类型 变量名 = (数据类型)被强转数据值;
运算符
- 运算符的分类: 按照功能分:算术运算符、赋值运算符、比较运算符、逻辑运算、条件运算符...
分类 | 运算符 |
---|---|
算术运算符 |
+ 、- 、* 、/ 、% 、++ 、--
|
赋值运算符 |
= 、+= 、-= 、*= 、/= 、%= 等 |
关系运算符 |
> 、>= 、< 、<= 、== 、!=
|
逻辑运算符 |
& 、| 、^ 、! 、&& 、||
|
条件运算符 | (条件表达式)?结果1:结果2; |
位运算符(了解) |
& 、| 、~ 、^ 、<< 、>> 、>>>
|
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
+ | 正 | +3 | 3 |
- | 负 | b=4;-b | -4 |
+ | 加 | 5+5 | 10 |
- | 减 | 6-4 | 2 |
* | 乘 | 3*4 | 12 |
/ | 除 | 5/5 | 1 |
% | 取模(取余) | 10%3 | 1 |
++ | 自增(前):先运算后取值 自增(后):先取值后运算 |
a=2;b=++a a=2;b=a++ |
a是3,b是3 a是3,b是2 |
-- | 自减(前):先运算后取值 自减(后):先取值后运算 |
a=2;b=--a a=2;b=a-- |
a是1,b是1 a是1,b是2 |
+ | 字符串连接 | "He"+"llo" | "Hello" |
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
== | 是否相等 | 4==3 | false |
!= | 是否不相等 | 4!=3 | true |
< | 是否小于 | 4<3 | false |
> | 是否大于 | 4>3 | true |
<= | 是否小于或等于 | 4<=3 | false |
>= | 是否大于或等于 | 4>=3 | true |
instanceof | 检查是否是类的对象 | "Hello" instanceof String | true |
运算符 | 运算 | 范例 | 运算结果 |
---|---|---|---|
<< | 左移 | 3<<2 | 12 |
>> | 右移 | 4>>1 | 2 |
>>> | 无符号右移 | 3>>>1 | 1 |
& | 按位与 | 6&3 | 2 |
| | 按位或 | 6|3 | 7 |
^ | 按位异或 | 6^3 | 5 |
~ | 按位取反 | ~6 | -7 |
运算符 | 运算方式 |
---|---|
<< | 空位补0,被移除的高位丢弃,空缺位补0。 |
>> | 当最高位是0,右移后,空缺位补0 当最高位是1,空缺位补1。 |
>>> | 被移位二进制最高位无论是0或者是1,空缺位都用0补。 |
& | 二进制位进行&运算,只有1&1时结果是1,否则是0; |
| | 二进制位进行 | 运算,只有0 | 0时结果是0,否则是1; |
^ | 二进制位相同是0 二进制位不同是1 |
~ | 按补码取反 |
三元运算符
运算符优先级
流程控制
①顺序结构
// 导入Scanner类
import java.util.Scanner;
public class Demo16Scanner {
public static void main(String[] args){
// 1.创建Scanner对象
Scanner scanner = new Scanner(System.in);
// 2.读取int类型数据
System.out.print("请输入一个整数:");
// 调用scanner对象的nextInt()方法
int age = scanner.nextInt();
System.out.println("age="+age);
// 3.读取boolean类型数据
System.out.print("请输入一个布尔值:");
boolean flag = scanner.nextBoolean();
System.out.println("flag="+flag);
// 4.读取字符串
System.out.print("请输入一个字符串:");
// next()方法会因为空格而终止读取
String strValue = scanner.next();
System.out.println("strValue="+strValue);
// 建议使用:
// nextLine()方法不会因为空格而终止读取
strValue = scanner.nextLine();
System.out.println("strValue="+strValue);
}
}
②分支结构
if语句
// 创建Scanner对象
Scanner scanner = new Scanner(System.in);
System.out.print("请输入i:");
int i = scanner.nextInt();
System.out.print("请输入j:");
int j = scanner.nextInt();
// 测试使用单独的if语句
// 当if(判断条件)为true时执行{}中的语句
if (i > j){
System.out.println("i 比 j 大");
}
// 不建议这么做
// 如果if语句块中只有一条语句,可以省略{}
if (i < j)
System.out.println("i 比 j 小");
System.out.println("后续操作");
// 读取一个布尔值
System.out.print("请输入flag:");
boolean flag = scanner.nextBoolean();
// 没有必要写flag == true
if (flag) {
System.out.println("flag是真的");
}
if...else
// 创建Scanner对象
Scanner scanner = new Scanner(System.in);
System.out.print("请输入i:");
int i = scanner.nextInt();
System.out.print("请输入j:");
int j = scanner.nextInt();
if (i > j){
System.out.println("i 比 j 大");
} else {
System.out.println("i 小于 或 等于 j");
}
if...else if...else语句
// 创建Scanner对象
Scanner scanner = new Scanner(System.in);
System.out.print("请输入i:");
int i = scanner.nextInt();
System.out.print("请输入j:");
int j = scanner.nextInt();
if (i > j){ // 执行条件判断①
System.out.println("i 比 j 大"); // ①为true时执行
} else if (i < j) { // ①为false继续执行下一个条件判断②
System.out.println("i 比 j 小"); // ②为true时执行
} else {
System.out.println("i 和 j 相等"); // ②为false时执行
}
if...else嵌套
if (i > j){ // 执行条件判断①
System.out.println("i 比 j 大"); // ①为true时执行
} else if (i < j) { // ①为false继续执行下一个条件判断②
System.out.println("i 比 j 小"); // ②为true时执行
} else {
System.out.println("i 和 j 相等"); // ②为false时执行
// 嵌套在其他if...else结构内的if
if (m > n){
System.out.println("m 比 n 大");
}
}
switch...case语句
import java.util.Scanner;
public class Demo18SwitchCase {
public static void main(String[] args){
// 创建Scanner对象
Scanner scanner = new Scanner(System.in);
System.out.print("请输入季节:");
String season = scanner.nextLine();
// 使用season变量的值和后面的case依次进行比较
// 遇到一个满足条件的case,那么后面的都会被执行,包括default分支
// 除非在某个case中使用了break关键字,停止了case的执行。
switch(season){
case "spring":
System.out.println("我喜欢春天");
// break ;
case "summer":
System.out.println("我喜欢夏天");
// break ;
case "autumn":
System.out.println("我喜欢秋天");
// break ;
case "winter":
System.out.println("我喜欢冬天");
// break ;
// 当前面每一个case都不匹配时执行default分支(默认分支)
default:
System.out.println("我喜欢梅雨季节");
}
}
}