由面试题出来的 为了显示 myStr = 23 这样的结果,写出在控制台输入的命令
public class MyClass { public static void main(String args[]) { String s1 = args[0]; String s2 = args[1]; String myStr = args[2]; System.out.printin(“myStr =” + s2 + myStr); } }答:java MyClass 1 2 3 4 想不通,后来网上搜索是在cmd下先编译后写入参数运行MyClass 后来在mac终端上尝试,直接在此类的目录下执行
java Test 1 2 3一直报错:找不到或无法加载主类 后来搜索了,提示编译在此类的所在目录,但是运行要退回到包的上一级目录下,例如:
package com.example.demo.test; /** * @ProjectName demo * @ClassName Test * @Description TODO * @Author jing * @Date 2018/10/25 19:38 * @Version 1.0 **/ public class Test { public static void main(String arg[]) { String s1 = arg[0]; String s2 = arg[1]; String s3 = arg[2]; System.out.print("s3=" + s2 + s3); } }所以,在mac终端下,退回到目录
完整目录 demo/src/main/java/com/example/demo/test 退回到java这个目录下,执行 hhh:java jing$ java com.example.demo.test.Test 1 2 3就成功了
s3=23