第一天
Dos命令
Win+R打开控制命令提示符窗口
常用命令:
d: 回车 盘符切换
cd 打开文件
cd.. 返回上一层目录
dir 显示所有文件
cls 清屏
exit 退出
Java历史
第一个Java程序
代码:
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello Java");
System.out.println("HelloWorld");
}
}
控制台输出:
Hello Java
HelloWorld
注释
注释分为单行注释、多行注释和文档注释
形式分别为:
“//“ 单行注释 例如://这是单行注释
“/*/” 多行注释 例如:/ 这是多行注释
这是多行注释
*/
“//”文档注释 例如:/ 这是文档注释,这是文档注释,这是文档注释/
public class Demo {
public static void main(String[] args) {
//我是单行注释
/* 我是多行注释 */
/** 我是文档注释 */
}
}
关键字
关键字是被Java语言赋予特殊含义,具有专门用途的单词,比如:class,public,static,void均为Java已经预设好的,Java中关键字均为小写。
标识符
标识符就是名称的意思,所有的名称都统称为标识符,Java中在定义的类、方法、变量等起的名字就是标识符
- #### 标识符的组成
由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成。
英文字符: a-zA-Z
数字: 0-9
符号: _与$
- #### 标示符规则
数字不能开头
不可以使用关键字
严格区分大小写,不限制长度起名时,尽量达到见名知意
数据类型
JAVA数据类型分基本数据类型和引用数据类型。
基本数据类型
Java里面包含8个基本数据类型,分别是: boolean、byte、char、short、int、float、douboe、long
byte字节
byte是JAVA中最小的数据类型,它在内存中占8位(8个bit),取值范围从-128到127
赋值:byte I = 127
short 短整型
short类型在内存中占2个字节,取值范围从 -32768到32767
赋值:short i = 32767
char 字符型
char类型在内存中占2个字节。表示一个字符,也可以使用ASCII码范围内的值来给char型的变量
赋值。由于字符在内存中的取值不存在负数范围,所有取值范围从 0 到 65535
赋值:char i = ‘a’; 或者 char i = 97
int 整型
int型在内存中占4个字节。取值范围从 -2147483648 到 2147483647
赋值:int i = 10
float 单精度浮点型
float型在内存中占4个字节。取值范围从 -3.4E38 到 3.4E38
赋值:float i = 1.0f
long 长整型
long型在内存中占8个字节。取值范围从 -9223372036854775808 到 9223372036854775807
double 双精度浮点型
double 型在内存中占8个字节。取值范围从 -1.7E308 到 1.7E308
boolean 布尔型
boolean类型只有两个值:true和false。
常量和变量
常量
Java 中的数据量分为常量和变量,程序中存在大量的数据来代表程序的状态,其中有
些数据在程序运行过程中值不能发生改变,这些数据在程序中被叫做常量。
变量
在程序运 过程中,会产生一些临时数据,应用程序会将这些临时数据存储到内存单元
中,每个内存单元都用一个标示符来表示,此时内存单元被称为变量,标识符被称为变量名,
变量是一种存储数据的载体,变量的数值可以被读取和修改。
1. 变量的定义
变量及变量的格式:数据类型 标识符 = 数值或表达式;
/**
变量
*/
public class Demo{
public static void main(String[] args){
//新建变量money表示一百块
int money = 100; //定义了一个int类型的变量,变量名为money,并赋值为100
System.out.println("第一次输出:"+ money);
money = 200;//变量money重新赋值为200
System.out.println("第二次输出:"+ money);
//3.1415926
//数据类型:double
//变量名:p
double p = 3.1415926;
//名字:张三
//数据类型:字符串、String
//变量名:name
String name = "张三";
//数据类型:long
long money2 = 100000000000000L;
System.out.println("钱:"+ money2);
}
}
- 变量使用的注意事项
变量使用是必须赋初始值,不赋值不能使用
变量名不能重复 - 数据类型转换,以及溢出
把一种数据类型的值赋给另一种数据类型的变量时,需要进行数据类型转换。
数据类型转换分两种 :自动类型转换 、强制类型转换
数据类型按照数据范围从小到大依次为:
byte -> short -> int -> long -> float -> double
自动类型转换
范围小的数据类型转换成范围大的数据类型,这种方式称为自动类型转换
语法格式:范围大的数据类型 变量 = 范围小的数据类型值;
public class Type3 {
public static void main(String[] args) {
//小 到 大
byte a = 3;
int b = a;
System.out.println(b);
}
}
强制类型转换
范围大的数据类型转换成范围小的数据类型,这种方式称为强制类型转换
语法格式:范围小的数据类型 变量 = (范围小的数据类型) 范围大的数据类型值;
public class Type3 {
public static void main(String[] args) {
//大 到 小
long c = 100;
int d = (int)c;
System.out.println(d);
}
}
注意:强制类型转换可能会导致数据精度损失。
运算符
运算符是用来计算数据的符号。数据可以是常量,也可以是变量。被运算符运算的数我们称为操作数。
算数运算符
常见的有:+,-,*,/,%,++,–
public class Demo {
public static void main(String[] args) {
int a = 10;
int b = 20;
int c = 25;
int d = 25;
System.out.println("a + b = " + (a + b) );
System.out.println("a - b = " + (a - b) );
System.out.println("a * b = " + (a * b) );
System.out.println("b / a = " + (b / a) );
System.out.println("b % a = " + (b % a) );
System.out.println("c % a = " + (c % a) );
}
赋值运算符
常见的有:=,+=,-=,*=,/=,%=
/*
* 赋值运算符
* +=、 -=、 *=、 /=、 %=
* 上面的运算符作用:运算顺序从右往左,将右边表达式的结果赋值给左边的变量
* 注意:赋值运算符左边必须是变量
*/
public class Demo {
public static void main(String[] args) {
int x = 10;
x += 20;// 相当于 x = (x+20);
System.out.println(x);
}
}
++运算,–运算
++运算会在原有的值上加1,等价于 变量=变量+1
–运算会在原有的值上减1,等价于 变量=变量+1
(a加加、a–)先进行表达式运算,再进行自增或者自减运算(先和别人算,再算自己)
- 情况一:单独使用,不参与运算
int a = 3;
int b = 3;
a++;
b--;
System.out.println(a);
System.out.println(b);
// 结果a值为 4,b值为2;
- 情况二:不单独使用,参与运算
int a = 3;
int b;
b = a++ + 10;
System.out.println(a);
System.out.println(b);
// 结果a值为 4,b值为13
(加加a、–a)先进行自增或者自减运算,再进行表达式运算(先算自己,再和别人运算)
- 情况一:单独使用,不参与运算,结果和 a–、b–是一样的
int a = 3;
int b = 3;
++a;
--b;
System.out.println(a);
System.out.println(b);
// 结果a值为 4,b值为2;
- 情况二:不单独使用,参与运算
int a = 3;
int b;
b = ++a + 10;
System.out.println(a);
System.out.println(b);
// 结果a值为 4,b值为14
逻辑运算符
常见的有:&,|,&&,||,^,!
演示:
public class Demo {
public static void main(String[] args) {
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
}
}
&&与&的区别
相同:当运算符两边的操作都为 true是,结果才true
不同:
& 不论左边为 true或者false,右边的表达式都会进行运算
&& 当左边为false时,右边的表达式不会进行运算
|| 与|的区别
相同:两边操作任意一边为true,其结果为 true
不同:
| 不论左边true或者 false,右边的表达式都会进行计算
|| 当左边为true时,右边的表达式不会进行运算
比较运算符
常见的比较运算符有:==,<=,>=,<,>,!=
public class Demo {
public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println("a == b = " + (a == b) );
System.out.println("a != b = " + (a != b) );
System.out.println("a > b = " + (a > b) );
System.out.println("a < b = " + (a < b) );
System.out.println("b >= a = " + (b >= a) );
System.out.println("b <= a = " + (b <= a) );
}
}
键盘录入(Scanner)使用
Scanner类属于引用类型
和定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式。
格式:
数据类型 变量名 = new 数据类型();:new 关键字创建对象
每种引用数据类型都有其功能,我们可以调用该类型实例的功能。
变量名.方法名();
每个方法会完成特定的功能
Scanner 类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到
录入的数据。
Scanner使用步骤:
- 导包(写在类文件的最顶部):import java.util.Scanner;
- 创建对象实例:Scanner sc = new Scanner(System.in);调用方法:
- 调用对应的方法: int i = sc.nextInt();用来接收控制台录入的数字 String s = sc.next();用来接收控制台录入的字符串
试例代码
import Java.util.Scanner;
public class Demo {
public static void main(String[] args) {
//创建 Scanner引用类型的变量
Scanner sc = new Scanner(System.in);
//获取数字
System.out.println("请输入一个数字 n");
int n = sc.nextInt();
System.out.println("n的值为" + n);
//获取字符串
System.out.println("请输入一个字符串 s");
String s = sc.next();