首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Java基础语法超详细

Java基础语法超详细

作者头像
用户11956880
发布2025-12-18 18:27:06
发布2025-12-18 18:27:06
620
举报

一、Java程序最小结构

一个最简单的Java程序需要三要素:类、主方法、输出语句

代码语言:javascript
复制
// 1. 定义类(public class是固定写法,HelloWorld是自定义类名)
public class HelloWorld {
    // 2. 主方法:程序执行的唯一入口
    public static void main(String[] args) {
        // 3. 输出语句:在控制台打印内容
        System.out.println("Hello, CSDN!");
    }
}

二、变量与数据类型

1. 变量的定义与使用

必须初始化

代码语言:javascript
复制
public class VariableDemo {
    public static void main(String[] args) {
        // 语法:数据类型 变量名 = 初始值;
        int age = 20;                    // 定义并赋值
        double salary;                   // 先定义
        salary = 8000.50;                // 后赋值
        char gender = '男';               // 单引号包裹单个字符
        boolean isStudent = true;        // 只有true/false两个值
        String name = "张三";             // 双引号包裹字符串
        
        // 使用变量
        System.out.println("姓名:" + name);
        System.out.println("年龄:" + age);
    }
}
2. Java八大基本数据类型

和c大多差不多,稍微记一下就行

数据类型

关键字

大小

取值范围

示例

字节型

byte

1字节

-128 ~ 127

byte b = 100;

短整型

short

2字节

-32768 ~ 32767

short s = 1000;

整型

int

4字节

-2³¹ ~ 2³¹-1

int i = 100000;

长整型

long

8字节

-2⁶³ ~ 2⁶³-1

long L = 100L;

单精度浮点

float

4字节

约±3.4e38

float f = 3.14f;

双精度浮点

double

8字节

约±1.8e308

double d = 3.1415926;

字符型

char

2字节

0 ~ 65535

char c = 'A';

布尔型

boolean

1位

true/false

boolean flag = true;

3. 类型转换

记住大范围转化小范围就行

byte,short,char->int->long->float->double

在同一个表达式中,假如存在多种类型,要转化为表达式中级别最高的那个进行运算

代码语言:javascript
复制
// 自动类型转换(小范围 → 大范围)
int small = 10;
double large = small;  // 自动转换,输出10.0

// 强制类型转换(大范围 → 小范围,可能丢失精度)
double pi = 3.14159;
int intPi = (int) pi;  // 强制转换,输出3(丢失小数部分)

三、运算符

这就和c一样

代码语言:javascript
复制
public class OperatorDemo {
    public static void main(String[] args) {
        int a = 10, b = 3;
        
        // 1. 算术运算符
        System.out.println(a + b);  // 13,加
        System.out.println(a - b);  // 7,减
        System.out.println(a * b);  // 30,乘
        System.out.println(a / b);  // 3,除(整数除法)
        System.out.println(a % b);  // 1,取余
        
        // 2. 比较运算符
        System.out.println(a > b);   // true
        System.out.println(a == b);  // false
        System.out.println(a != b);  // true
        
        // 3. 逻辑运算符
        boolean x = true, y = false;
        System.out.println(x && y);  // false,与(两个都为true才true)
        System.out.println(x || y);  // true,或(一个为true就true)
        System.out.println(!x);      // false,非
        
        // 4. 赋值运算符
        int c = 5;
        c += 3;  // 等同于 c = c + 3; 此时c=8
        c *= 2;  // 等同于 c = c * 2; 此时c=16
        
        // 5. 自增自减
        int count = 5;
        System.out.println(count++);  // 5(先使用,后+1)
        System.out.println(++count);  // 7(先+1,后使用)
    }
}

四、流程控制语句

这也和c一样

1. 条件语句(if-else)
代码语言:javascript
复制
// 单分支
int score = 85;
if (score >= 60) {
    System.out.println("及格了!");
}

// 双分支
if (score >= 90) {
    System.out.println("优秀");
} else {
    System.out.println("继续努力");
}

// 多分支(else if)
if (score >= 90) {
    System.out.println("A");
} else if (score >= 80) {
    System.out.println("B");
} else if (score >= 70) {
    System.out.println("C");
} else {
    System.out.println("D");
}
2. switch
代码语言:javascript
复制
int day = 3;
switch (day) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");  // 输出这个
        break;
    default:
        System.out.println("其他日子");
}
3. 循环语句
代码语言:javascript
复制
// 1. for循环(明确循环次数)
for (int i = 1; i <= 5; i++) {
    System.out.println("第" + i + "次循环");
}
// 输出:第1次循环 ... 第5次循环

// 2. while循环(先判断,后执行)
int j = 1;
while (j <= 3) {
    System.out.println("j = " + j);
    j++;
}
// 输出:j = 1, j = 2, j = 3

// 3. do-while循环(先执行1次,再判断)
int k = 1;
do {
    System.out.println("至少执行一次,k = " + k);
    k++;
} while (k <= 0);  // 条件为false,但仍会执行一次
4. 循环控制关键字
代码语言:javascript
复制
// break:终止整个循环
for (int i = 1; i <= 10; i++) {
    if (i == 5) break;  // 当i=5时,跳出循环
    System.out.println(i);  // 只输出1,2,3,4
}

// continue:跳过本次循环,进入下一次
for (int i = 1; i <= 5; i++) {
    if (i == 3) continue;  // 当i=3时,跳过这次
    System.out.println(i);  // 输出1,2,4,5(跳过3)
}

五、数组(容器)

这个比c/c++的数组稍微方便点,可以直接得到数组长度length,c++要用vector容器,

定义方法也稍有不同,但也是很好记的new一个空间就行,和c++比较像

代码语言:javascript
复制
public class ArrayDemo {
    public static void main(String[] args) {
        // 1. 数组的三种定义方式
        int[] arr1 = new int[5];               // 长度为5,默认值全为0
        int[] arr2 = {1, 2, 3, 4, 5};          // 直接赋值
        int[] arr3 = new int[]{10, 20, 30};    // 另一种赋值方式
        
        // 2. 访问与修改数组元素(索引从0开始)
        arr1[0] = 100;      // 修改第一个元素
        System.out.println(arr1[0]);  // 输出100
        System.out.println(arr2[2]);  // 输出3
        
        // 3. 遍历数组(重要!)
        int[] scores = {88, 92, 76, 95, 84};
        
        // 方式1:for循环(可操作索引)
        for (int i = 0; i < scores.length; i++) {
            System.out.println("第" + i + "个元素:" + scores[i]);
        }
        
        // 方式2:增强for循环(简洁,只读)
        for (int score : scores) {
            System.out.println("分数:" + score);
        }
    }
}

六、方法(函数)

Java里叫方法,不叫函数

代码语言:javascript
复制
public class MethodDemo {
    public static void main(String[] args) {
        // 调用自定义方法
        printHello();  // 输出:你好!
        
        int result = add(5, 3);  // 调用带返回值的方法
        System.out.println("5 + 3 = " + result);  // 输出8
        
        boolean isEven = checkEven(10);  // 判断奇偶
        System.out.println("10是偶数吗?" + isEven);  // 输出true
    }
    
    // 1. 无参数无返回值的方法
    public static void printHello() {
        System.out.println("你好!");
    }
    
    // 2. 有参数有返回值的方法
    public static int add(int a, int b) {
        return a + b;  // 返回计算结果
    }
    
    // 3. 返回布尔值的方法
    public static boolean checkEven(int number) {
        return number % 2 == 0;  // 偶数返回true
    }
}

七、输入输出(Scanner类)

这里import就是来导入包的,之后再详细解释,有点类似c的头文件可以这样类比吧

Java里的输入输出感觉比c/c++麻烦点,

下面代码的输入,,利用scanner类创建对象,然后再用对象调用里面next方法,具体代码看下面

代码语言:javascript
复制
import java.util.Scanner;  // 必须导入Scanner类

public class InputDemo {
    public static void main(String[] args) {
        // 创建Scanner对象
        Scanner sc = new Scanner(System.in);
        
        System.out.print("请输入您的姓名:");
        String name = sc.next();  // 接收字符串
        
        System.out.print("请输入您的年龄:");
        int age = sc.nextInt();  // 接收整数
        
        System.out.print("请输入您的身高(m):");
        double height = sc.nextDouble();  // 接收小数
        
        System.out.println("--- 用户信息 ---");
        System.out.println("姓名:" + name);
        System.out.println("年龄:" + age);
        System.out.println("身高:" + height + "m");
        
        scanner.close();  // 关闭Scanner(好习惯)
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Java程序最小结构
  • 二、变量与数据类型
    • 1. 变量的定义与使用
    • 2. Java八大基本数据类型
    • 3. 类型转换
  • 三、运算符
  • 四、流程控制语句
    • 1. 条件语句(if-else)
    • 2. switch
    • 3. 循环语句
    • 4. 循环控制关键字
  • 五、数组(容器)
  • 六、方法(函数)
  • 七、输入输出(Scanner类)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档