Java 基础语法入门
一、数据类型
Java 是强类型语言,所有变量必须声明类型后才能使用。基本数据类型分为四类:
| 类型 | 关键字 | 示例 |
|---|---|---|
| 整型 | int、long、short、byte | int age = 25; |
| 浮点型 | float、double | double pi = 3.14; |
| 字符型 | char | char c = 'A'; |
| 布尔型 | boolean | boolean flag = true; |
数据类型的详细使用
1. 整型
整型用于表示整数,Java 提供了四种整型,区别在于取值范围不同:
byte:1 字节,范围 -128 ~ 127short:2 字节,范围 -32768 ~ 32767int:4 字节,范围 -21亿 ~ 21亿(最常用)long:8 字节,范围很大,赋值时需要在数字后加L或l(建议大写)
byte b = 100;
short s = 20000;
int i = 1000000;
long l = 3000000000L; // 不加L会编译错误,因为超出int范围
System.out.println(l); // 3000000000
2. 浮点型
浮点型用于表示小数:
float:4 字节,单精度,赋值时需加F或f后缀double:8 字节,双精度,更常用,可省略后缀
float f = 3.14F; // 不加F会报错,因为小数默认是double
double d = 3.141592653589793; // double精度更高
System.out.println(f); // 3.14
System.out.println(d); // 3.141592653589793
3. 字符型
char 用于表示单个字符,使用单引号括起来。它底层存储的是 Unicode 编码(0~65535),因此也可以直接用整数赋值(但会输出对应的字符)。
char c1 = 'A';
char c2 = 65; // 等价于 'A'
char c3 = '\u0041'; // Unicode 转义,也是 'A'
System.out.println(c1); // A
System.out.println(c2); // A
System.out.println(c3); // A
4. 布尔型
boolean 只有两个值:true 和 false,通常用于条件判断。
boolean isJavaFun = true;
boolean isFishTasty = false;
System.out.println(isJavaFun); // true
除基本类型外,Java 还有**引用类型**,最常用的是 `String`(字符串):
String name = "Java";
System.out.println(name.length()); // 4
System.out.println(name.toUpperCase()); // JAVA
5. 类型转换
- 自动类型转换:小范围类型可自动转为大范围类型(如
int→long、long→double)。 - 强制类型转换:大范围转小范围需手动强制,可能丢失精度。
int a = 100;
long b = a; // 自动转换:int → long
double pi = 3.14159;
int p = (int) pi; // 强制转换:double → int,小数部分丢失
System.out.println(p); // 3
6. 引用类型与 String
除基本类型外,Java 还有引用类型,最常用的是 String(字符串)。String 不是基本类型,但使用频率极高,支持多种操作:
String name = "Java";
String greeting = "Hello, " + name; // 字符串连接
System.out.println(greeting); // Hello, Java
System.out.println(name.length()); // 4(获取长度)
System.out.println(name.toUpperCase()); // JAVA(转大写)
System.out.println(name.charAt(0)); // J(获取指定位置的字符)
System.out.println(name.equals("java")); // false(区分大小写比较)
System.out.println(name.equalsIgnoreCase("java")); // true(忽略大小写比较)
注意:String 对象的内容不可变,每次修改都会产生新对象。
二、变量与常量
变量用于存储可变数据,常量用 final 修饰,一旦赋值不可更改。
int count = 0; // 变量
count = 10; // 可重新赋值
final double PI = 3.14159; // 常量
// PI = 3.0; // 编译报错
三、运算符
int a = 10, b = 3;
// 算术运算
System.out.println(a + b); // 13
System.out.println(a / b); // 3(整除)
System.out.println(a % b); // 1(取余)
// 比较运算(返回 boolean)
System.out.println(a > b); // true
System.out.println(a == b); // false
// 逻辑运算
System.out.println(a > 5 && b < 5); // true(与)
System.out.println(a > 5 || b > 5); // true(或)
System.out.println(!(a > 5)); // false(非)
// 自增/自减
a++; // a = 11
b--; // b = 2
四、控制流
条件判断
int score = 85;
if (score >= 90) {
System.out.println("优秀");
} else if (score >= 60) {
System.out.println("及格"); // 输出此行
} else {
System.out.println("不及格");
}
switch 适合多分支等值判断:
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("其他");
}
循环
// for 循环:适合已知次数
for (int i = 1; i <= 5; i++) {
System.out.print(i + " "); // 1 2 3 4 5
}
// while 循环:适合条件未知
int n = 1;
while (n <= 3) {
System.out.println("第 " + n + " 轮");
n++;
}
// 增强 for(遍历数组/集合)
int[] nums = {10, 20, 30};
for (int num : nums) {
System.out.print(num + " "); // 10 20 30
}
五、数组
数组存储同类型的固定长度元素,下标从 0 开始。
// 声明并初始化
int[] scores = {90, 85, 78, 92};
// 访问元素
System.out.println(scores[0]); // 90
System.out.println(scores.length); // 4
// 修改元素
scores[1] = 88;
// 二维数组
int[][] matrix = {
{1, 2, 3},
{4, 5, 6}
};
System.out.println(matrix[1][2]); // 6
六、方法
方法是封装逻辑的基本单元,避免重复代码。
// 定义方法:返回类型 方法名(参数列表)
public static int add(int x, int y) {
return x + y;
}
// 无返回值用 void
public static void greet(String name) {
System.out.println("Hello, " + name + "!");
}
public static void main(String[] args) {
System.out.println(add(3, 7)); // 10
greet("Java"); // Hello, Java!
}
方法支持重载:同名方法,参数不同即可共存。
public static int add(int a, int b) { return a + b; }
public static double add(double a, double b) { return a + b; }
七、类与对象
Java 是面向对象语言,类是对象的模板。
public class Person {
String name; // 属性
int age;
// 构造方法:创建对象时调用
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 实例方法
public void introduce() {
System.out.println("我是 " + name + ",今年 " + age + " 岁。");
}
}
// 使用类
public class Main {
public static void main(String[] args) {
Person p = new Person("小明", 20); // 创建对象
p.introduce(); // 我是 小明,今年 20 岁。
}
}
八、异常处理
程序运行中可能出现错误,用 try-catch 捕获异常,保证程序稳定运行。
try {
int result = 10 / 0; // 触发 ArithmeticException
} catch (ArithmeticException e) {
System.out.println("捕获异常:" + e.getMessage()); // / by zero
} finally {
System.out.println("无论是否异常,finally 必定执行");
}
总结
| 知识点 | 要点 |
|---|---|
| 数据类型 | 强类型,基本类型 + 引用类型 |
| 控制流 | if/switch 判断,for/while 循环 |
| 数组 | 固定长度,下标从 0 开始 |
| 方法 | 封装逻辑,支持重载 |
| 类与对象 | 面向对象核心,new 创建实例 |
| 异常处理 | try-catch-finally 保障稳定性 |
掌握以上基础语法后,可进一步学习集合框架(List、Map)、接口与继承、泛型等进阶内容,逐步构建完整的 Java 知识体系。