質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

25603閲覧

javaの配列に文字を格納して処理する方法

datuota00

総合スコア20

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2017/01/12 05:02

疑問、質問

javaについての質問です。
キーボードから文字を一字ずつ入力し配列に格納する。
その後配列に格納されていた文字によってそれぞれ順番に処理していくというプログラムをつくりたいと思っています。

import java.util.Scanner; public class KeyboardInputHairetu{ public static void main(String[] argst){ String s[]=new String[5]; //Scannerクラスのインスタンスの生成 Scanner sc = new Scanner(System.in); for(int i=0;i<s.length;i++){ System.out.println("文字を入力"); //文字をキーボードから入力し、配列に記憶 s[i]= sc.next(); } for(int i=0;i<s.length;i++){ System.out.printf("s[%d]=%d\n",i,s[i]); } /*ここでそれぞれの文字に対する処理を実行させたい case'a': a(); break; case'b': b(); break; case'c': c(); break; case'd': d(); break; case'e': e(); break; */ } public void a(){} public void b(){} public void c(){} public void d(){} public void e(){} }

実行結果

入力
e
b
d
c
a

出力
e()
b()
d()
c()
a()
↑ここで処理をそれぞれ実行してくれるものをつくりたい。

その他

そもそも配列に格納するプログラムが間違っている可能性が大きいです。
そちらについても教えていただければ幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

以下でできると思います

java

1import java.util.Scanner; 2 3public class KRY { 4 public static void main(String[] argst) { 5 6 7 // 文字をキーボードから入力し、配列に記憶 8 String s[] = new String[5]; 9 // Scannerクラスのインスタンスの生成 10 Scanner sc = new Scanner(System.in); 11 for (int i = 0; i < s.length; i++) { 12 System.out.println("文字を入力"); 13 // 文字をキーボードから入力し、配列に記憶 14 s[i] = sc.next(); 15 } 16 17 for (int i = 0; i < s.length; i++) { 18 System.out.printf("s[%d]=%s\n", i, s[i]); 19 20 switch (s[i]) { 21 case "a": 22 a(); 23 break; 24 case "b": 25 b(); 26 break; 27 case "c": 28 c(); 29 break; 30 case "d": 31 d(); 32 break; 33 case "e": 34 e(); 35 break; 36 default: 37 break; 38 } 39 } 40 41 } 42 43 public static void a() { 44 System.out.println("AAAAAAAAAAA"); 45 } 46 47 public static void b() { 48 System.out.println("BBBBBBBBBBB"); 49 50 } 51 52 public static void c() { 53 System.out.println("CCCCCCCCCCC"); 54 55 } 56 57 public static void d() { 58 System.out.println("DDDDDDDDDDD"); 59 60 } 61 62 public static void e() { 63 System.out.println("EEEEEEEEEEE"); 64 65 } 66 67}

投稿2017/01/12 05:14

編集2017/01/12 05:17
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

datuota00

2017/01/12 14:17

ご回答ありがとうございます!自分にもわかるコードで納得することができました!また機会がございましたらよろしくお願いいたします!
datuota00

2017/01/20 07:49

できました!ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問