【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基本语法的基本介绍,语法更新结束会紧跟项目实战,后续会持续在该专栏进行更新!!!

相关推荐
V+zmm10134几秒前
社区二手物品交易小程序ssm+论文源码调试讲解
java·微信小程序·小程序·毕业设计·ssm
坊钰3 分钟前
【Java 数据结构】合并两个有序链表
java·开发语言·数据结构·学习·链表
秋天下着雨10 分钟前
apifox调用jar程序
java·python·jar
m0_7482510814 分钟前
docker安装nginx,docker部署vue前端,以及docker部署java的jar部署
java·前端·docker
A227416 分钟前
Redis——缓存雪崩
java·redis·缓存
Mr.朱鹏17 分钟前
操作002:HelloWorld
java·后端·spring·rabbitmq·maven·intellij-idea·java-rabbitmq
顽疲37 分钟前
从零用java实现 小红书 springboot vue uniapp (6)用户登录鉴权及发布笔记
java·vue.js·spring boot·uni-app
oscar9991 小时前
Maven项目中不修改 pom.xml 状况下直接运行OpenRewrite的配方
java·maven·openrewrite
南宫生1 小时前
力扣-数据结构-3【算法学习day.74】
java·数据结构·学习·算法·leetcode
工业甲酰苯胺1 小时前
聊一聊 C#线程池 的线程动态注入
java·开发语言·c#