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 退出游戏
相关推荐
马剑威(威哥爱编程)4 分钟前
【AI全栈后端12-08】Spring Boot 用 MCP 统一接入内部系统:让 AI 接一次,全公司复用
java·人工智能·spring boot
顽疲10 分钟前
从零用 Java 实现小红书 SpringBoot Vue UniApp(23)笔记话题多对多:一条笔记进多个话题池
java·vue.js·spring boot
木井巳24 分钟前
【BFS 解决拓扑排序】课程表
java·算法·leetcode·广度优先·宽度优先·推荐算法·图搜索算法
Crazy________35 分钟前
05Linux内存管理核心原理与运维实战
java·开发语言
Nebula_g37 分钟前
JavaSE拓展:工具类Executors
java·开发语言·后端·spring·基础·javase
扶风ff43 分钟前
练题簿在线免费刷题:会员线下组卷、Word 试卷与成绩导入,课堂检测更方便
java·开发语言·算法·小程序·word
鱼宵44 分钟前
Spring AI 可观测与透明化:traceId 串起全链路,思考过程实时直播给用户
java·人工智能·spring·链路追踪·springai
Raas1001 小时前
AI网关能做语义缓存吗?MAI Gateway(魔芋企业级AI网关)实战能力深度解读
java·后端·spring
天空鸟_时光不老1 小时前
13-亮点提炼:把技术说辞翻译成业务价值
java·spring boot·spring·spring cloud·mybatis
小蒜学长1 小时前
基于SpringBoot+Vue的租房管理系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·租房管理