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 退出游戏
相关推荐
丘山一郎3 小时前
Spring 中的IOC控制反转 和DI依赖注入
java·后端·spring
码视野3 小时前
基于 Spring Boot + Vue3 的【大学英语四六级 (CET-4/6) 作文智能评分与句式润色系统】设计与实现(含PRD/三端高保真源码/大屏)
java·前端·人工智能·spring boot·后端·vue3
MetaLite3 小时前
Spring-AOP自调用为什么失效-AopContext真能解决吗
java·后端·spring
大模型码小白3 小时前
AI 对话流性能调优:万级消息的虚拟滚动落地
java·大数据·前端·javascript·人工智能·算法·机器学习
许彰午3 小时前
14-字段级SM4加密与SM2签名
java·低代码·架构
许彰午5 小时前
13-describe元数据输出
java·低代码·架构·状态模式
用户3721574261356 小时前
Java 设置 Word 文档编辑限制并允许指定区域编辑
java
宠友信息6 小时前
社区类源码开发实践中的仿小红书系统技术要点分析
java·spring boot·redis·mysql·uni-app·vue·内容运营
用户3721574261356 小时前
Java 设置 PDF 表单域只读或扁平化
java
luteres8 小时前
Spring学习笔记
java·后端·spring