【Spring Boot 教程:从入门到精通】掌握 Spring Boot 开发技巧与窍门(一)-java语法(1)

一些Java基本语法的基本介绍,语法更新结束会紧跟项目实战,后续会持续在该专栏进行更新!!!

目录

前言

一、基本概念

1.JDK、JRE、JVM的关系:

2.JDK版本选择

3.Java代码的编译运行流程

4.JSE、JEE、JME的区别

二、Java语法

1.变量、运算符、输入与输出

1.1内置数据类型

1.2常量

1.3类型转化

1.4表达式

1.5输入

1.6输出

2.判断语句

1.if-else语句

2.switch语句

3.逻辑运算符与条件表达式

3.循环语句

3.1while循环

[3.2do while循环](#3.2do while循环)

3.3for循环

总结


前言

一些Java基本语法的基本介绍,语法更新结束会紧跟项目实战,后续会持续在该专栏进行更新!!!


提示:以下是本篇文章正文内容,下面案例可供参考

一、基本概念

1.JDK、JRE、JVM的关系:

  • JDK:Java Development Kit,Java开发工具包
  • JRE: Java Runtime Environment,Java运行环境
  • JVM:Java Virtual Machine,Java虚拟机
  • JDK包含JRE,JRE包含JVM

2.JDK版本选择

  • 目前JDK1.8(也叫JDK8,注意不是JDK18)用得最多

3.Java代码的编译运行流程

  • 将Java源码编译成Java字节码。
  • 使用JVM将Java字节码转化成机器码。
  • JVM作用:跨平台、内存管理、安全。

4.JSE、JEE、JME的区别

  • JSE: Java Standard Edition,标准版
  • JEE:Java Enterprise Edition,企业版
  • JME: Java Mirco Edition,移动版
  • Spring是JEE的轻量级替代品
  • SpringBoot是Spring + 自动化配置

二、Java语法

1.变量、运算符、输入与输出

类似于C#,Java的所有变量和函数都要定义在class中。

1.1内置数据类型

|-------------|---------|--------------------|
| 类型 | 字节数 | 举例 |
| byte | 1 | 123 |
| short | 2 | 12345 |
| int | 4 | 123456789 |
| long | 8 | 1234567891011L |
| float | 4 | 1.2F |
| double | 8 | 1.2, 1.2D |
| boolean | 1 | true,false |
| char | 2 | 'A' |

1.2常量

使用final修饰:

java 复制代码
final int N = 110;

1.3类型转化

  • 显示转化:int x = (int)'A';
  • 隐式转化:double x = 12, y = 4 * 3.3;

1.4表达式

java 复制代码
int a = 1, b = 2, c = 3;
int x = (a + b) * c;
x ++;

1.5输入

方式1,效率较低,输入规模较小时使用。

java 复制代码
Scanner sc = new Scanner(System.in);
String str = sc.next();  // 读入下一个字符串
int x = sc.nextInt();  // 读入下一个整数
float y = sc.nextFloat();  // 读入下一个单精度浮点数
double z = sc.nextDouble();  // 读入下一个双精度浮点数
String line = sc.nextLine();  // 读入下一行

方式2,效率较高,输入规模较大时使用。注意需要抛异常。

java 复制代码
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str = br.readLine();
        System.out.println(str);
    }
}

1.6输出

方式1,效率较低,输出规模较小时使用。

java 复制代码
System.out.println(123);  // 输出整数 + 换行
System.out.println("Hello World");  // 输出字符串 + 换行
System.out.print(123);  // 输出整数
System.out.print("hcy\n");  // 输出字符串
System.out.printf("%04d %.2f\n", 4, 123.456D);  // 格式化输出,float与double都用%f输出

方式2,效率较高,输出规模较大时使用。注意需要抛异常。

java 复制代码
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;

public class Main {
    public static void main(String[] args) throws Exception {
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        bw.write("Hello World\n");
        bw.flush();  // 需要手动刷新缓冲区
    }
}

2.判断语句

1.if-else语句

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int year = sc.nextInt();
        if (year % 100 == 0) {
            if (year % 400 == 0)
                System.out.printf("%d是闰年\n", year);
            else
                System.out.printf("%d不是闰年\n", year);
        } else {
            if (year % 4 == 0)
                System.out.printf("%d是闰年\n", year);
            else
                System.out.printf("%d不是闰年\n", year);
        }
    }
}

2.switch语句

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int day = sc.nextInt();
        String name;
        switch (day) {
            case 1:
                name = "Monday";
                break;
            case 2:
                name = "Tuesday";
                break;
            case 3:
                name = "Wednesday";
                break;
            case 4:
                name = "Thursday";
                break;
            case 5:
                name = "Friday";
                break;
            case 6:
                name = "Saturday";
                break;
            case 7:
                name = "Sunday";
                break;
            default:
                name = "not valid";
        }
        System.out.println(name);
    }
}

3.逻辑运算符与条件表达式

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int year = sc.nextInt();
        if (year % 100 != 0 && year % 4 == 0 || year % 400 == 0)
            System.out.printf("%d是闰年\n", year);
        else
            System.out.printf("%d不是闰年\n", year);
    }
}

3.循环语句

3.1while循环

java 复制代码
int i = 0;
while (i < 5) {
    System.out.println(i);
    i ++ ;
}

3.2do while循环

java 复制代码
int i = 0;
do {
    System.out.println(i);
    i ++ ;
} while (i < 5);

do while语句与while语句非常相似。唯一的区别是,do while语句限制性循环体后检查条件。不管条件的值如何,我们都要至少执行一次循环。

3.3for循环

java 复制代码
for (int i = 0; i < 5; i ++ ) {  // 普通循环
    System.out.println(i);
}

int[] a = {0, 1, 2, 3, 4};
for (int x: a) {  // forEach循环
    System.out.println(x);
}

总结

一些Java基本语法的基本介绍,语法更新结束会紧跟项目实战,后续会持续在该专栏进行更新!!!

相关推荐
魔道不误砍柴功5 分钟前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
NiNg_1_2345 分钟前
SpringBoot整合SpringSecurity实现密码加密解密、登录认证退出功能
java·spring boot·后端
闲晨8 分钟前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
种树人202408199 分钟前
如何在 Spring Boot 中启用定时任务
spring boot
Chrikk2 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*2 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go
canyuemanyue2 小时前
go语言连续监控事件并回调处理
开发语言·后端·golang
杜杜的man2 小时前
【go从零单排】go语言中的指针
开发语言·后端·golang
测开小菜鸟2 小时前
使用python向钉钉群聊发送消息
java·python·钉钉
P.H. Infinity3 小时前
【RabbitMQ】04-发送者可靠性
java·rabbitmq·java-rabbitmq