Java 程序参数
启动程序时在命令行传入词,并在 main 里读取。在 Flag.java 中保留 public 类 Flag 和参数 String[] args。第一段演示打印 args[0]。第二段先打印 args.length,再打印 args[0]。用 javac Flag.java 编译。运行 java Flag oak,让类名后的第一个词是 oak。第一段屏幕显示 oak。可选 Generics 留给后面页面。本课讲的是命令行词放进 args,不是 Scanner 对话,也不是 Mini Project 标签。
读取类名后的第一个词
打开 Flag.java。保留 public 类名 Flag。删除残留的 Mini Project Box 的 Scanner 演示、残留的 Compiling Build 打印、残留的 Recap Summary 行,以及遮挡参数故事的 Dice Random 掷骰——如果它们埋没了本课主题。程序不能等待键盘 Scanner 输入。
在 Flag.main 中保留参数列表 String[] args,并打印第一个词:
System.out.println(args[0]);
在存放 Flag.java 的文件夹中运行 javac Flag.java。然后运行 java Flag oak——不是 java Flag.java oak。类名是 Flag。词 oak 是第一个程序参数,进入 args[0]。屏幕显示 oak。
public class Flag {
public static void main(String[] args) {
System.out.println(args[0]);
}
}
走一遍运行:javac 写出 Flag.class。java Flag oak 加载类并用一个元素 "oak" 填充 args。main 启动。args[0] 是 "oak"。println 写出 oak。不会出现 item:。不会打印 mug 4。不会出现 Build 的 ok。
看着命令说出初学者规则:类名后的词变成 args。索引 0 是第一个词。不要在本页发明 Generics 演示。可选 Generics 在核心路径之后。不要只输入 java Flag 再读 args[0]——空数组没有第一个词,运行可能抛错。
若仍看到残留 Box 文件的 mug 4,切换到 Flag.java,编译并运行 java Flag oak。若 javac 抱怨类名,保持 public class Flag 与 Flag.java 一致。
统计词数,再打印第一个
一个参数证明 args[0]。第二段演示同时展示 args.length 与第一个词。保留同一个 public 类 Flag。打印两行:
System.out.println(args.length);
System.out.println(args[0]);
再次用 javac Flag.java 编译。运行 java Flag oak pine。屏幕先显示 2,再显示 oak。长度为 2,因为类名后有两个词。第一个词仍是 oak。第二个词 pine 在 args[1],本演示不打印它。
若在两行演示上运行 java Flag oak,屏幕显示 1,然后 oak。长度跟随你在 Flag 后输入的词数。
public class Flag {
public static void main(String[] args) {
System.out.println(args.length);
System.out.println(args[0]);
}
}
用 javac Flag.java 编译并再次运行 java Flag oak pine。走一遍:args.length 为 2。args[0] 是 "oak"。打印输出这两行。不等待 Scanner。不把 mug 和 4 拼在一起。
把两段演示当作两种教学形状:先证明一个参数能打印;再证明长度加第一个词。两种形状共享同一类名和同一想法:java Flag 之后的词填充 args。
若输入 java Flag.java oak,对本课程路径而言是错误的运行形式。保持 java Flag 加词。若编辑后忘记编译,过时的 .class 可能显示旧打印——像 Compiling 习惯一样重新编译。
args 不是 Scanner,也不是 Mini Project
Mini Project 让你在程序等待时键入答案。程序参数要求启动时传入词。Scanner 在进程开始后从 System.in 读。args 在 main 运行前就已填好。今天不要在同一个初学者文件里混用这两种输入方式。
oak 只是教学词。不是 Random 种子,也不是 Summary 地图行。若残留 Box 演示仍在 item: 等待,那个文件在做 Mini Project 工作。切换到 Flag,在命令行传入 oak。
没有至少一个词时,读 args[0] 会失败。有词时索引从 0 开始。args.length 告诉你传了几个词。把这三件事放在一起记。
核心路径检查点
你已经用 main 建类、用 javac 编译、用 java 运行、存值、用 if 决策、走循环、调方法、用对象和列表、捕错、读文件、做继承。Mini Project 把两个键入答案拼成 mug 4。程序参数展示另一种喂给程序的方式:启动命令行上的词。
本页结束本课程 Java 核心路径。像 Generics 这样的可选页在后面,需要时再学。完成核心不依赖它们。不要把本参数课当成发明那些可选主题的地方。
保持一个 public Flag。main 上保留 String[] args。运行命令保持 java Flag 加词。练习参数时不要把 Mini Project 的 Scanner 演示放在本页。
完成核心前的文件夹检查
成功编译后列出文件夹。应同时看到 Flag.java 和 Flag.class。编辑源文件、保存、运行 javac Flag.java,再运行 java Flag oak 或 java Flag oak pine。没有 .class 就先编译。文件夹不对则启动器找不到 Flag。
屏幕空则确认 main 仍在打印。若因 args 为空而抛错,在类名后加词。若一个文件里两个 public 类,只让 Flag 为 public。
不要把 Box 的 Scanner 提示贴进 Flag 来「丰富」页面。不要在此重建 Build 的 ok 打印。本课只教命令行词。
可选 Generics 之前
你可以保持 public 类 Flag,在 main 读 String[] args,对 java Flag oak 打印 args[0],对 java Flag oak pine 先打印 args.length 再打印 args[0],用 javac Flag.java 编译,运行命令不在类名后加 .java。核心路径在本页结束。若继续,可选 Generics 在后面等待。
把 Flag 演示当作清晰的一对参数课。练习 args 时不要把 Box Mini Project 文件放在本页。练习 args 时不要把 Build Compiling 演示放在本页。可选课之前不要把 Generics 工作放在本页。一词运行显示 oak 或两词运行显示 2 然后 oak 时,程序参数完成了本课任务,Java 核心路径完成。
最后再过一遍文件夹:一个 public Flag,main 上有 String[] args,无 Scanner 等待,无 Random,无 LocalDate,编译后用类名后的词运行。再运行一次 javac Flag.java 和 java Flag oak。若屏幕仍是 oak,程序参数形状稳固,核心课程可标记完成,可选页稍后仍在。每次阅读保持一种清晰的参数习惯,让每次通读教同一张地图。
🧠 测试您的知识
测试您的知识
通过这个互动测验挑战自己,看看你对这个主题的理解程度如何
📝 说明
- 仔细阅读每个问题
- 为每个问题选择最佳答案
- 您可以随时重新参加测验
- 您的进度将显示在顶部