コマンドラインから入力するⅡ - 萌えJava超入門
第二十二章 
コマンドラインから入力するⅡ

入力文字から文字を抽出

コマンドラインから受け取った文字列の先頭文字を抽出します。


目次


1.入力文字から文字を抽出

コマンドラインから入力した文字列を文字にしてみましょう。
Stringクラスの charAtメソッドで先頭文字だけ使います。


//Sample_21_13.java
import java.io.Console;
public class Sample_21_13 {

  private static Console cons = System.console();

  public static Character getChar(String msg){

      Character och = null;

      String str = cons.readLine(msg);
      if(str.length() != 0){
          och = str.charAt(0);
      }

      return och;
  }

  public static void main(String[] args) {

      Character oc = getChar("Input [a-z]: ");
      switch(oc){
        case 'a': System.out.println("Alfa"); break;
        case 'b': System.out.println("Bravo"); break;
        case 'c': System.out.println("Charlie"); break;
        case 'd': System.out.println("Delta"); break;
        case 'e': System.out.println("Echo"); break;
        case 'f': System.out.println("Foxtrot"); break;
        case 'g': System.out.println("Golf"); break;
        case 'h': System.out.println("Hotel"); break;
        case 'i': System.out.println("India"); break;
        case 'j': System.out.println("Juliett"); break;
        case 'k': System.out.println("Kilo"); break;
        case 'l': System.out.println("Lima"); break;
        case 'm': System.out.println("Mike"); break;
        case 'n': System.out.println("November"); break;
        case 'o': System.out.println("Oscar"); break;
        case 'p': System.out.println("Papa"); break;
        case 'q': System.out.println("Quebec"); break;
        case 'r': System.out.println("Romeo"); break;
        case 's': System.out.println("Sierra"); break;
        case 't': System.out.println("Tango"); break;
        case 'u': System.out.println("Uniform"); break;
        case 'v': System.out.println("Victor"); break;
        case 'w': System.out.println("Whiskey"); break;
        case 'x': System.out.println("X-ray"); break;
        case 'y': System.out.println("Yankee"); break;
        case 'z': System.out.println("Zulu"); break;
        default : System.out.println("out of range!"); break;

      }
  }
}

コマンドライン
ws>javac Sample_21_13.java
ws>java Sample_21_13
Input [a-z]:

今度もいい感じっス。
'a' から 'z' の文字を入力しよう。
2文字以上入力しても
切り捨てられるぞ。
コマンドライン
ws>javac Sample_21_13.java
ws>java Sample_21_13
Input [a-z]: f <---自分で入力した
Foxtrot


switch文が動きました。
charAtメソッドで
文字になってるっスね!



2.メソッドの説明


getChar
コマンドラインから受け取った文字列を Characterにして返します。
charAtメソッドで、最初の1文字だけを返します。
文字長が0の場合は、nullを返します。



3.超おまけ、NATOフォネティックコード


NATOフォネティックコード
文字コード単語
aAlfa
bBravo
cCharlie
dDelta
eEcho
fFoxtrot
gGolf
hHotel
iIndia
jJuliett
kKilo
lLima
mMike
nNovember
oOscar
pPapa
qQuebec
rRomeo
sSierra
tTango
uUniform
vVictor
wWhiskey
xX-ray
yYankee
zZulu





お疲れ様でした。




© 2019 awasekagami