Java古法入门到精通

第一章:编写第一个程序

1.1 Java 程序基本结构

java 复制代码
package cn.comicjava.ch01;

public class WoWTextadventure {
    public static void main(String[] args) {
        // 代码逻辑
    }
}
  • package: 包声明
  • class: 类定义
  • main : 程序入口,接收 String[] args 作为命令行参数

1.2 命令行参数

java 复制代码
public static void main(String[] args) {
    System.out.println(args[0]);  // 访问第一个参数
}

运行:java -cp bin cn.comicjava.ch01.WoWTextadventure Pkmer

默认值处理

java 复制代码
args.length > 0 ? args[0] : "Pkmer"

1.3 文本块 (Text Blocks) - Java 15+

使用 """ 定义多行字符串,配合 formatted() 插入变量:

java 复制代码
System.out.println("""
        你好 %s 欢迎来到魔兽世界。
        """.formatted(name));

1.4 输入输出

输出

java 复制代码
System.out.println("普通信息");   // 标准输出
System.err.println("错误信息");  // 错误输出

输入

java 复制代码
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+

java 复制代码
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 程序结束

java 复制代码
System.exit(0);  // 正常退出,非 0 表示异常退出

练习项目

WoWTextadventure - 命令行魔兽世界文字冒险游戏

WoWTextadventure.java

功能:

  • N/O/S/W 移动
  • I 查看背包
  • Q 退出游戏
相关推荐
写代码写到手抽筋23 分钟前
5G上行DCI字段判定:端口 流数 PMI选择详解
java·算法·5g
xieliyu.33 分钟前
Java算法精讲:双指针(二)
java·开发语言·算法
jeffer_liu1 小时前
Spring AI 生产级实战:裁判员
java·人工智能·后端·spring·大模型
小bo波2 小时前
枚举实战
java·设计模式·枚举·后端开发·代码重构
夜微凉42 小时前
三、Spring
java·后端·spring
橘右今2 小时前
2026 Java后端高频面试宝典
java·开发语言·面试
xyzzklk3 小时前
解决Salesforce无法向外发送邮件
android·java·开发语言·网络·crm·salesforce·客户关系管理
biubiubiu07064 小时前
SpringBoot关于外部化配置
java·spring boot·spring
zzz_23684 小时前
【Spring】面试突击系列(二):SpringBoot 入门与自动配置原理
java·spring boot·spring
Full Stack Developme4 小时前
Spring AOP 与 AspectJ
java·后端·spring