如何在Java中使用main args[]调用方法

如何在Java中使用main args[]调用方法,java,methods,args,Java,Methods,Args,我想知道是否有任何方法可以通过使用main args[]来调用类函数,而不是像下面这样: public class Test { public static void main(String[] args) { String choice=""; System.in(choice); if (choice.contains("1")) { Item item = new Item(); item.function();

我想知道是否有任何方法可以通过使用main args[]来调用类函数,而不是像下面这样:

public class Test {

public static void main(String[] args) {

    String choice="";
    System.in(choice);

    if (choice.contains("1"))
    {
        Item item = new Item();
        item.function();
    }
    else
    {
        Item2 item2 = new Item2();
        item2.function2();
     }


   }

}
还有一些类似于:

-a calls the x function
-b calls the y function

在main方法中,
args
是一个数组,其中包含传递给程序的参数,因此您可以像任何其他Java数组一样通过索引访问其元素

这是您需要做的:

if (args[0].contains("a")){
    Item item = new Item();
    item.function();
}
else if(args[0].contains("b")){
    Item2 item2 = new Item2();
    item2.function2();
}

在main方法中,
args
是一个数组,其中包含传递给程序的参数,因此您可以像任何其他Java数组一样通过索引访问其元素

这是您需要做的:

if (args[0].contains("a")){
    Item item = new Item();
    item.function();
}
else if(args[0].contains("b")){
    Item2 item2 = new Item2();
    item2.function2();
}

当我偶然发现这句话时,我正好需要参考我课本上关于二维阵列的内容,这句话让我大吃一惊

main的参数数组的名称不是必需的 是阿格斯。你可以随便给它取名字。这是一个标准惯例, 但是,对于要使用的名称args

我试过了,这是真的。也许这是常识,但我不知道。不相信我?试试看

import java.util.*;

public class ReverseString {
   public static void main(String[] gafuydqaFUYQ) {

    String userString;

    Scanner input = new Scanner(System.in);

    System.out.println("Enter a sentence and I will reverse in.");
    userString = input.nextLine();

    String a[] = userString.split(" ");

    for (int i = 0; i < a.length; i++) {
        System.out.print(a[i] + " ");
    }
    System.out.println("");
    for (int i = a.length - 1; i >= 0; i--) {
        System.out.print(a[i] + " ");
    }
}
import java.util.*;
公共类反向限制{
公共静态void main(字符串[]gafuydqaFUYQ){
字符串用户字符串;
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入一个句子,我将反向输入”);
userString=input.nextLine();
字符串a[]=userString.split(“”);
for(int i=0;i=0;i--){
系统输出打印(a[i]+“”);
}
}

}

当我遇到这句话时,我碰巧需要参考教科书上关于二维阵列的内容,这句话让我大吃一惊

main的参数数组的名称不是必需的 是阿格斯。你可以随便给它取名字。这是一个标准惯例, 但是,对于要使用的名称args

我试过了,这是真的。也许这是常识,但我不知道。不相信我?试试看

import java.util.*;

public class ReverseString {
   public static void main(String[] gafuydqaFUYQ) {

    String userString;

    Scanner input = new Scanner(System.in);

    System.out.println("Enter a sentence and I will reverse in.");
    userString = input.nextLine();

    String a[] = userString.split(" ");

    for (int i = 0; i < a.length; i++) {
        System.out.print(a[i] + " ");
    }
    System.out.println("");
    for (int i = a.length - 1; i >= 0; i--) {
        System.out.print(a[i] + " ");
    }
}
import java.util.*;
公共类反向限制{
公共静态void main(字符串[]gafuydqaFUYQ){
字符串用户字符串;
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入一个句子,我将反向输入”);
userString=input.nextLine();
字符串a[]=userString.split(“”);
for(int i=0;i=0;i--){
系统输出打印(a[i]+“”);
}
}

}
if(args[0].equals(“a”)
?是的,有一种方法……只要调用传入
args
的程序,检查参数是
a
还是
b
,然后像您现在这样调用该方法。看看哪种方法更容易实现。
if(args[0].equals(“a”))
?是的,有一种方法…只要调用您的程序,并传入
参数
,然后检查参数是
a
还是
b
,然后像您正在做的那样调用该方法。看看哪种方法更容易实现。我的意思是,如果您需要输入一个参数,您可以使用
参数[1]
对于第二个参数,您可以通过索引访问每个参数。我的意思是,如果您需要再输入一个参数,您可以使用
args[1]
对于第二个参数,您可以通过索引访问每个参数。