Apache Commons CLI-부울 옵션

부울 옵션은 명령 줄에 존재 여부에 따라 표시됩니다. 예를 들어 option이 있으면 해당 값이 true이고 그렇지 않으면 false로 간주됩니다. 현재 날짜를 인쇄하고 -t 플래그가있는 경우 다음 예제를 고려하십시오. 그런 다음 시간도 인쇄합니다.

CLITester.java

import java.util.Calendar;
import java.util.Date;

import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
import org.apache.commons.cli.DefaultParser;
import org.apache.commons.cli.Options;
import org.apache.commons.cli.ParseException;

public class CLITester {
   public static void main(String[] args) throws ParseException {
      Options options = new Options();
      options.addOption("t", false, "display time");
      
      CommandLineParser parser = new DefaultParser();
      CommandLine cmd = parser.parse( options, args);

      Calendar date = Calendar.getInstance();
      int day = date.get(Calendar.DAY_OF_MONTH);
      int month = date.get(Calendar.MONTH);
      int year = date.get(Calendar.YEAR);

      int hour = date.get(Calendar.HOUR);
      int min = date.get(Calendar.MINUTE);
      int sec = date.get(Calendar.SECOND);

      System.out.print(day + "/" + month + "/" + year);
      if(cmd.hasOption("t")) {
         System.out.print(" " + hour + ":" + min + ":" + sec);
      }
   }
}

산출

옵션을 전달하지 않고 파일을 실행하고 결과를 확인하십시오.

java CLITester
12/11/2017

-t를 옵션으로 전달하면서 파일을 실행하고 결과를 확인합니다.

java CLITester
12/11/2017 4:13:10