Código:
usage: Vista.CalculadoraCLIVista
-resta Calcula la resta dos operandos
-suma Calcula la suma dos operandosl
¿ Cómo puedo "decirle" que el args[0] equivale a resta,suma..etc?
Lo estoy haciendo con el patron MVC y el código de la vista lo tengo así , pero no estoy muy convencido que este bien..
Código:
public void realizarOperacion(String[] args,double x, double y) {
// para poder pasarle el options al parser
Options options = mostrarOpciones();
CommandLineParser parser = new BasicParser();
CommandLine cmd = null;
try {
cmd = parser.parse(options, args);
} catch (ParseException ex) {
Logger.getLogger(CalculadoraCLIVista.class.getName()).log(Level.SEVERE, null, ex);
}
if (cmd == null) {
System.err.println("No se cargo bien el parseador de la linea de comandos");
System.exit(-1);
}
if (cmd.hasOption("h") || cmd.getOptions().length == 0) {
new HelpFormatter().printHelp(CalculadoraCLIVista.class.getCanonicalName(), options);
return;
}
if (cmd.hasOption("suma")) {
// leer los dos argumentos , convertirlos a double y realizar operacion.
// "x" seria el primer operando que se le pasa," y" el segundo.
x = Double.parseDouble(args[1]);
y = Double.parseDouble(args[2]);
controlador.sumar(x, y);
}
.. de tal manera que yo ponga sumar 1 2 y la línea de comandos me devuelva 3.. :S