How do you pass a command line argument of a string to java main method that would call a specific method in another class?
I need to be able to pass 'java Statdriver mean' would call the mean method or 'java Statdriver std' would call the standard deviation method or passing no arguments would result in a call to mean method via the terminal.
Doing it my way does not seem to work. My problem I believe lies with the if, else if, else loop.
Here is my code:
public class StatDriver
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
double total;
double mean;
double standardDeviation;
double average;
total = 0;
args[0] = "mean";
args[1] = "std";
ArrayList<Double> data = new ArrayList<Double>();
while(input.hasNextDouble())
{
data.add(input.nextDouble());
}
if(args.equals(args[0]))
{
mean = Stats.mean(data);
System.out.println("Mean: " + mean);
}
else if(args.equals(args[1]))
{
standardDeviation = Stats.stdDev(data);
System.out.println("StdDev: " + standardDeviation);
}
else
{
mean = Stats.mean(data);
System.out.println("Mean: " + mean);
}
// mean = Stats.mean(data);
//standardDeviation = Stats.stdDev(data);
//System.out.println("Mean: " + mean);
// System.out.println(" StdDev: " + standardDeviation);
}
}