赞
踩
目录
Java是一种高级编程语言,由Sun Microsystems公司于1995年推出。Java具有跨平台性、面向对象、健壮性、安全性、可移植性等特点,被广泛应用于企业级应用开发、移动应用开发、大数据处理、云计算等领域。Java程序可以在不同的操作系统上运行,只需编译一次,就可以在任何支持Java虚拟机(JVM)的平台上运行。Java还提供了丰富的库和框架,可以加快开发过程,提高开发效率。
1. 面向对象:Java是一种面向对象的编程语言,支持封装、继承和多态等面向对象的特性,使得代码更易于理解、维护和重用。
2. 跨平台性:Java应用程序可以在不同的操作系统上运行,只需编译一次,就可以在任何支持Java虚拟机(JVM)的平台上运行。
3. 强大的生态系统:Java拥有庞大而活跃的开源社区,提供了丰富的库和框架,可以加快开发过程,提高开发效率。
4. 内存管理:Java提供了自动的垃圾回收机制,开发者不需要手动管理内存,减少了内存泄漏和野指针等问题。
5. 安全性:Java具有强大的安全性特性,包括沙箱安全模型、字节码验证和安全类加载等机制,可以防止恶意代码的执行。
6. 多线程支持:Java内置了对多线程的支持,可以方便地创建和管理多线程应用程序,提高程序的并发性能。
7. 广泛应用:Java广泛应用于企业级应用开发、移动应用开发、大数据处理、云计算等领域,具有良好的可扩展性和稳定性。
首先安装好 JDK
Java 开发工具 JDK8 和 JDK17 介绍及安装 (超级详细)_#看心情的博客-CSDN博客
1. 新建一个 A.java 文件
2. 使用记事本打开,输入:
- public class A{
- public static void main(String[] args){
- System.out.println("Hello World");
- }
- }
注意:java中的代码是严格区分大小写
java中的标点符号必须是英文状态下输入,不能是中文状态
java中的路径,文件名都不要使用中文
3. 在文件夹上目录上输入 cmd 回车
4. 输入 javac A.java 编译Java文件
5. 编译完后会产生一个A.class 文件
5. 输入 java A 运行Java文件
编译:A.java -> jdk -> A.class
运行:A.class
Java开发工具IDEA安装(2023)-CSDN博客CSDN
1. 单行注释://
2. 多行注释:/* */
3. 文档注释::/** **/
序号 | 数据类型 | 解释 | 位数 | 默认值 | 举例说明 |
1 | byte | 位 | 8 | 0 | byte b = 10; |
2 | short | 短整型 | 16 | 0 | short s = 10; |
3 | int | 整数 | 32 | 0 | int i = 10; |
4 | long | 长整型 | 64 | 0 | long l = 10l; |
5 | folat | 单精度 | 32 | 0.0 | float f = 10.0f; |
6 | double | 双精度 | 64 | 0.0 | double d = 10.0d; |
7 | char | 字符 | 16 | 空 | char c = 'c'; |
8 | boolean | 布尔 | 8 | flase | boolean b = true; |
注意:String 字符串不是 8 中基本类型!!!
1. 自动转换(隐式转换):小范围 -> 大范围
- // 将 int 转换成 double (小范围 -> 大范围)
- int a = 10;
- double b = a; // 10.00
2. 强制转换(显示转换): 大范围 -> 小范围
- // 将 double 转换成 int (大范围 -> 小范围)
- double a = 11.11;
- int b = (int) a; // 11
1. 存储数据:变量用于存储数据,可以是数字、文本、布尔值等。通过给变量赋值,我们可以在程序中保存和操作数据。
2. 数据共享:变量允许我们在程序中共享数据。通过将数据存储在变量中,我们可以在不同的代码块中访问和使用相同的数据。
3. 数据处理:变量使得数据处理更加灵活和方便。我们可以对变量进行计算、操作和转换,从而实现各种功能和逻辑。
4. 代码可读性:使用变量可以增加代码的可读性和可维护性。通过给变量取一个有意义的名称,可以更清晰地表达代码的意图,使代码更易于理解和修改。
5. 代码重用:通过使用变量,我们可以在不同的地方重复使用相同的数据。这样可以减少代码的冗余,提高代码的复用性和效率。
变量是计算机程序中用于存储数据的一种数据类型。它是一个名称,代表了一个值或一个对象,可以在程序中多次使用。在程序中,我们可以给变量赋值,修改变量的值,以及使用变量来进行各种计算和操作。
1. 变量名:用于标识变量的名称,必须符合一定的命名规则。
2. 变量类型:用于指定变量的数据类型,例如整数、浮点数、布尔值、字符串等。
3. 变量值:存储在变量中的具体数值或对象。
- /*
- 第一种: 声明变量并且赋值
- 变量类型 变量名 = 值;
- */
- int a = 10;
-
- /*
- 第二种: 先声明变量,再赋值
- 变量类型 变量名;
- 变量名 = 值;
- */
- int b;
- b = 10;
-
- /*
- 第三种: 同一种类型的变量,一行声明多个
- 变量类型 变量名1,变量名2,变量名3;
- 变量名1 = 值;
- 变量名2 = 值;
- 变量名3 = 值;
- */
- int c1, c2, c3;
- c1 = 10;
- c2 = 20;
- c3 = 30;
-
- /*
- 第四种: 同一种类型的变量,一行声明多个并且赋值
- 变量类型 变量名1 = 值1, 变量名2 = 值2, 变量名3 = 值3;
- */
- int d1 = 1, d2 = 2, d3 = 3;
- int a = 10;
- int b = 20;
- int c = a; // 将 a 的值赋值给 c
- a = b; // 将 b 的值赋值给 a (原值会覆盖)
- b = c; // 将 c (原 a 的值) 赋值给 b
-
- System.out.println("a: " + a + ", b: " + b); // a: 20, b: 10
1. 首字母: 字母, _, $, 中文(不推荐使用)
2. 首字母后面: 首字母, 数字, 也可以没有
注意: 不能是java中的关键字
- int a = 10, b = 20;
- System.out.println(a + b); // 10 + 20 = 30
-
- // 如果一个数字加一个字符串,则会进行拼接
- int c = 123;
- String d = "hello";
- System.out.println(c + d); // 123 + hello = 123hello
- int a = 20, b = 10;
- System.out.println(a - b); // 20 - 10 = 10
- int a = 2, b = 5;
- System.out.println(a * b); // 2 * 5 = 10
- int a = 10;
- int b = 2;
- System.out.println(a / b); // 5
-
- int c = 5;
- int d = 2;
- System.out.println(c / d); // 2
- int a = 5;
- int b = 2;
- System.out.println(a % b); // 1
-
- int c = 6;
- int d = 2;
- System.out.println(c % d); // 0
- // 第一种先加在赋值
- int a = 1;
- System.out.println(++a); // 2;
-
- // 第二种先赋值在加
- int b = 1;
- System.out.println(b++); // 1
- // 第一种先减在赋值
- int a = 1;
- System.out.println(--a); // 0;
-
- // 第二种先赋值在减
- int b = 1;
- System.out.println(b--); // 1
- // 给 a 和 b 同时赋值
- int a = 10, b = 20;
- System.out.println("a: " + a + ", b: " + b); // a: 10, b: 20
-
- // 字符串类型也可以进行 加法赋值
- String a = "hello", b = " world";
- a += b;
- System.out.println(a); // hello world
- // 将第一个数字加与第二个数字
- int a = 10, b = 20;
- a+=b;
- System.out.println(a); // 30
- // 将第一个数字减与第二个数字
- int a = 10, b = 20;
- a-=b;
- System.out.println(a); // -10
- // 将第一个数字乘与第二个数字
- int a = 10, b = 20;
- a*=b;
- System.out.println(a); // 200
- // 将第一个数字除与第二个数字
- int a = 100, b = 20;
- a/=b;
- System.out.println(a); // 5
- // 将第一个数字模与第二个数字
- int a = 5, b = 2;
- a%=b;
- System.out.println(a); // 1
比较运算返回的结果是一个boolean值不是true就是false;
- // 比较两个数是否相等
- int a = 5, b = 2;
- System.out.println(a==b); // false
-
- // 比较两个字符串是否相等
- String a = "hello", b = "hello";
- System.out.println(a==b); // true
- // 比较第一个数是否不等于第二个数
- int a = 5, b = 2;
- System.out.println(a!=b); // true
-
- // 比较第一个字符串是否不等于第二个字符串
- String a = "hello", b = "hello";
- System.out.println(a!=b); // false
- // 比较第一个数是否大于第二个数
- int a = 5, b = 2;
- System.out.println(a>b); // true
- // 比较第一个数是否小于第二个数
- int a = 5, b = 2;
- System.out.println(a<b); // false
- // 比较第一个数是否大于或者等于第二个数
- int a = 5, b = 2;
- System.out.println(a>=b); // true
- // 比较第一个数是否小于或者等于第二个数
- int a = 5, b = 2;
- System.out.println(a<=b); // false
逻辑运算的前提是需要两个表达式,返回的是boolean值。
两个表达式同时为true时返回true,否则返回false
- // 判断a 等于 b 与 c 等于 d
- int a = 5, b = 2;
- int c = 10, d = 10;
- System.out.println(a == b && c == d); // false
有一个表达式为true时返回true,两个表达式都为false返回false
- int a = 5, b = 2;
- int c = 10, d = 10;
- System.out.println(a == b || c == d); // true
- // 取反
- boolean b = true;
- System.out.println(!b); // false
-
- // 结合表达式使用
- int a = 10, b = 10;
- System.out.println(!(a == b)); // false
将两个操作数的对应位进行按位与操作,只有在对应位都为 1 时,结果位才为 1。
- int a = 5; // 二进制表示为 0101
- int b = 3; // 二进制表示为 0011
- int result = a & b; // 二进制结果为 0001,即 1
- System.out.println(result); // 1
将两个操作数的对应位进行按位或操作,只要对应位中有一个为 1,结果位就为 1。
- int a = 5; // 二进制表示为 0101
- int b = 3; // 二进制表示为 0011
- int result = a | b; // 二进制结果为 0111,即 7
- System.out.println(result); // 7
将两个操作数的对应位进行按位异或操作,当对应位不同时,结果位为 1;当对应位相同时,结果位为 0。
- int a = 5; // 二进制表示为 0101
- int b = 3; // 二进制表示为 0011
- int result = a ^ b; // 二进制结果为 0110,即 6
- System.out.println(result); // 6
对操作数进行按位取反操作,将 0 变为 1,将 1 变为 0。取反操作是针对二进制补码表示的。
- int a = 5; // 二进制表示为 0000 0000 0000 0000 0000 0000 0000 0101
- int result = ~a; // 二进制结果为 1111 1111 1111 1111 1111 1111 1111 1010,即 -6
- System.out.println(result); // -6
将操作数的所有位向左移动指定的位数,右侧用 0 填充。
- int a = 5; // 二进制表示为 0000 0000 0000 0000 0000 0000 0000 0101
- int result = a << 2; // 二进制结果为 0000 0000 0000 0000 0000 0000 0001 0100,即 20
- System.out.println(result); // 20
将操作数的所有位向右移动指定的位数,左侧用原有的最高位填充(保持符号位不变)。
- int a = -10; // 二进制表示为 1111 1111 1111 1111 1111 1111 1111 0110
- int result = a >> 2; // 二进制结果为 1111 1111 1111 1111 1111 1111 1111 1101,即 -3
- System.out.println(result); // -3
根据条件选择不同类型的值,形式为:条件 ? 值1 : 值2
- int a = 10, b = 5;
- String result = a > b ? "a 大于 b":"a 小于 b";
- System.out.println(result); // a 大于 b
instanceof
运算符用于检查一个对象是否属于某个类或其子类的实例
- // 动物类
- class Animal{
-
- }
-
- // 狗类 继承 动物类
- class Dog extends Animal{
-
- }
-
- public class Test {
-
- public static void main(String[] args) {
-
- // Dog 是 Animal 的子类,所以返回 true
- System.out.println(new Dog() instanceof Animal); // true
-
- // Animal 不是 Dog 的子类,所以返回 false
- System.out.println(new Animal() instanceof Dog); // false
- }
-
- }
If-else 语句是 Java 中用于根据条件执行代码的一种结构。它由一个条件、一个 then 子句和一个 else 子句组成。条件是一个布尔表达式,它可以是 true 或 false。如果条件为 true,则执行 then 子句。如果条件为 false,则执行 else 子句。
- /* 第一种 if 单独使用
- if(条件){
- 条件满足执行
- }
- */
- if (i > 100) {
- System.out.println("i 大于 100 时执行");
- }
-
- /* 第二种 if else 结合使用
- if(条件){
- 条件满足执行
- }else{
- 条件不满足执行
- }
- */
- if (i > 100) {
- System.out.println("i 大于 100 时执行");
- } else {
- System.out.println("i 小于 100 时执行");
- }
-
- // 简写 省略大括号
- if (i > 100)
- System.out.println("i 大于 100 时执行");
- else
- System.out.println("i 小于 100 时执行");
-
- // 简写 使用三元运算符
- String str = (i > 100) ? "i 大于 100 时执行":"i 小于 100 时执行";
- System.out.println(str);
-
- /* 第三种 多重if
- if(条件1){
- 满足条件1执行
- } else if(条件2){
- 满足条件2执行
- } else if(条件3){
- 满足条件3执行
- }else{
- 都不满足执行
- }
- */
- if (i > 100) {
- System.out.println("i 大于 100 时执行");
- } else if (i > 80 || i <= 100) {
- System.out.println("i 在 80-100 之间执行");
- } else if (i > 70 || i <= 80) {
- System.out.println("i 在 70-80 之间执行");
- } else {
- System.out.println("i 小于 70 执行");
- }
-
- /* 第四种 嵌套if
- if(条件1){
- if(条件2){
- 满足条件1,满足条件2执行
- }else{
- 满足条件1,不满足条件2执行
- }
- } else {
- if(条件3){
- 不满足条件1,满足条件3执行
- }else{
- 不满足条件1,不满足条件3执行
- }
- }
- */
- if(i > 100){
- if(i > 120){
- System.out.println("i 大于 120 执行");
- }else{
- System.out.println("i 大于 100 小于 120 执行");
- }
- }else {
- if(i > 80){
- System.out.println("i 小于 100 大于 80 执行");
- }else{
- System.out.println("i 小于 80 执行");
- }
- }
switch 语句是根据一个表达式的值执行不同的代码块的一种结构。switch 语句由一个关键字 switch、一个表达式和一个或多个 case 语句组成。表达式必须是一个整数、字符或字符串。case 语句由一个关键字 case 和一个常量组成。每个 case 语句后面跟着一个冒号,然后是该 case 语句要执行的代码块。
- // 猜拳游戏: 1-石头,2-剪刀,3-布
- int i = 1;
- String str;
- switch (i) {
- case 1:
- str = "石头";
- break;
- case 2:
- str = "剪刀";
- break;
- case 3:
- str = "布";
- break;
- default:
- str = "其他";
- break;
- }
-
- System.out.println("你出的是:" + str);
-
- // 简写
- String str = switch (i) {
- case 1 -> "石头";
- case 2 -> "剪刀";
- case 3 -> "布";
- default -> "其他";
- };
- // 创建一个 Scanner 对象
- Scanner scanner = new Scanner(System.in);
-
- // 接受用户输入的整数
- System.out.println("输入一个整数");
- int i = scanner.nextInt();
- System.out.println("输入的整数为:" + i);
-
-
- // 接受用户输入的字符
- System.out.println("输入一个字符串");
- String str = scanner.next();
- System.out.println("输入的字符串为:"+str);
- // 创建一个 Random 对象
- Random random = new Random();
-
- // 生成一个随机数
- int i = random.nextInt();
-
- System.out.println("生成的数为: " + i);
生成指定范围的随机数
- // 创建一个 Random 对象
- Random random = new Random();
-
- // 生成 25-55之间的随机数,公式:(最大值-最小值+1) + 最小值
- int i = random.nextInt(31) + 25;
- System.out.println("生成数为:" + i);
循环3要素
1. 变量初始化
2. 循环的条件
3. 变量改变
语法:
- 变量初始化
- while(循环的条件){
- 循环体(变量改变)
- }
示例:
- // 打印1-10
- int i = 0; // 变量初始化
- while (i < 10) { // 循环条件
- i++; // 变量改变
- System.out.println(i);
- }
语法:
- 变量初始化
- do{
- 循环体(变量改变)
- }while(循环的条件);
示例:
- // 打印1-10
- int i = 0; // 变量初始化
- do {
- i++; // 变量改变
- System.out.println("do...while 循环打印:" + i);
- }while (i < 10); // 循环条件
语法:
- for(变量初始化; 循环条件; 变量改变){
- 循环体
- }
示例:
- // 打印1-10
- for (int i = 1; i <= 10; i++) {
- System.out.println("for 循环打印:" + i);
- }
1. 知道具体的循环次数,优先使用for循环
2. while是先判断循环条件,在执行循环体
3. do...while是执行一次的循环体,在判断循环条件
4. do...while至少会执行一次
- // 打印九九乘法表
- for (int i = 1; i <= 9; i++) {
- for (int j = 1; j <= i; j++) {
- System.out.print(i + "X" + j + "= " + i * j + "\t");
- }
- System.out.println();
- }
终止当前循环
- // 如果输出的数为 4 则终止循环
- for (int i = 0; i < 10; i++) {
- if(i == 4){
- break;
- }
- System.out.println(i);
- }
终止当次循环,进入下一次循环
- // 跳过 4
- for (int i = 0; i < 10; i++) {
- if(i == 4){
- continue;
- }
- System.out.println(i);
- }
终止所有循环,直接返回
- // 如果输出的数为4终止所有循环
- for (int i = 0; i < 10; i++) {
- if(i == 4){
- return;
- }
- System.out.println(i);
- }
- for (int i = 0; i < 5; i++) {
- System.out.println(i);
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。