第一章:编写第一个程序
1.1 Java 程序基本结构
package cn.comicjava.ch01;
public class WoWTextadventure {
public static void main(String[] args) {
// 代码逻辑
}
}
- package: 包声明
- class: 类定义
- main: 程序入口,接收
String[] args作为命令行参数
1.2 命令行参数
public static void main(String[] args) {
System.out.println(args[0]); // 访问第一个参数
}
运行:java -cp bin cn.comicjava.ch01.WoWTextadventure Pkmer
默认值处理:
args.length > 0 ? args[0] : "Pkmer"
1.3 文本块 (Text Blocks) - Java 15+
使用 """ 定义多行字符串,配合 formatted() 插入变量:
System.out.println("""
你好 %s 欢迎来到魔兽世界。
""".formatted(name));
1.4 输入输出
输出
System.out.println("普通信息"); // 标准输出
System.err.println("错误信息"); // 错误输出
输入
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String command = reader.readLine();
注意:readLine() 返回 null 表示输入流结束(EOF)
- Windows:
Ctrl+Z+Enter - Linux/Mac:
Ctrl+D
1.5 switch 表达式 - Java 14+
switch (command.toLowerCase()) {
case "n" -> System.out.println("向北走");
case "s" -> System.out.println("向南走");
case "i" -> System.out.println("查看背包");
case "q" -> {
// 多行逻辑
System.exit(0);
}
default -> System.err.println("未知操作");
}
箭头语法 (->) 替代传统冒号,更简洁。
1.6 字符串处理
- 拼接:
"Hello " + name - 格式化:
"Hello %s".formatted(name)
1.7 程序结束
System.exit(0); // 正常退出,非 0 表示异常退出
练习项目
WoWTextadventure - 命令行魔兽世界文字冒险游戏
功能:
- N/O/S/W 移动
- I 查看背包
- Q 退出游戏