09 · main 和 args
我的原话
- 10/12 录音:「为什么就这么确定传进来的参数是一个字符串数组呢?从哪里传进来的?」
- 10/12:「张三哪里来的?是你运行后输入的吗?然后等它响应吗?」→ 不是,启动时跟命令写在一行
- 4/18:「每次先问自己,程序名是什么,参数是谁规定的,参数在程序内部是怎么被解释的。」
main 逐词
| 词 |
意思 |
见 |
| public |
JVM 在类外面也能叫到 |
05 |
| static |
一个对象都没有时也能叫 |
08 |
| void |
不交回东西 |
04 |
| main |
JVM 只认这个名字(约定) |
|
| String[] args |
启动参数 |
↓ |
args
java T16.java 张三 18 ← 一整行,按一次回车($ 是提示符,不用敲)
args[0]="张三" args[1]="18"(18 也是字符串)
- 为什么 String:终端里敲的都是文字,JVM 不猜
- 为什么数组:个数不定(0 个也行,args.length = 0)
- IDEA 点绿三角 = 背后替我敲了
java ...,没带参数
- args vs Scanner:args 启动时一口气给、程序不等;Scanner 跑到一半停下来问(3 月登录系统用的、踩过残留换行)
题
| 题 |
我答 |
结果 |
java T16.java 苹果 香蕉 橘子:length?args[1]? |
3、香蕉 |
✅(下标从 0 数) |