public
1 2 public static void main(String[] args) { 3 // TODO 自動生成されたメソッド・スタブ 4 double a, b, c =0; 5 String str = "taro 100 hanako 90 jiro 75"; 6 String[] score = str.split(" "); 7 8 a = Double.parseDouble(score[1]); 9 b = Double.parseDouble(score[3]); 10 c = Double.parseDouble(score[5]); 11 String [] name = {score[0], score[2], score[4]}; 12 Double [] scores = {a, b, c}; 13 14 15コード 16```### 前提・実現したいこと 17 18ここに質問の内容を詳しく書いてください。 19 20javaで、 21太郎 100 花子 90 次郎 75 22のように一列で名前と点数を入力して配列を用いて平均点、点数、偏差値を表示する下のようなプログラムが書きたいのですが、最初の文字と数値の混ざったデータを配列に格納する方法が分かりません。splitで分割するのだろうという予測は立つのですが、今までは要素を一つ一つすべて分割する方法しか使ってこなかったので、どう配列につなげていけばいいのか分かりません。java初心者なので本当に初歩的なところでつまずいてしまっています。 23 24一応できる範囲で途中までコードは描いてみたのですが、本当にただ格納しただけのようになってしまっています。 25 26public class hyou { 27 28 public static void main(String[] args) { 29 // TODO 自動生成されたメソッド・スタブ 30 double a, b, c =0; 31 String str = "taro 100 hanako 90 jiro 75"; 32 String[] score = str.split(" "); 33 34 a = Double.parseDouble(score[1]); 35 b = Double.parseDouble(score[3]); 36 c = Double.parseDouble(score[5]); 37 String [] name = {score[0], score[2], score[4]}; 38 Double [] scores = {a, b, c}; 39 40さらにその後の方向性もよろしければご教授いただきたいです。よろしくお願いいたします。 41 42 43 44平均点 88.3 45 太郎 花子 次郎 46点 100 90 75 47標準偏差 ~ ~ ~
まず、"太郎 100 花子 90 次郎 75"の行データがあるとして、単語の間の空白文字(全角空白文字になっていますがだいじょうぶですか?)を区切りとしてひとつづつ分割するJavaのコードは書けますか? 多分、それが出発点だと思いますし、それができないとなると「ゼロから教えて(イコール丸投げ)」と言うようなかたちになってしまいます。
丸投げのような質問をしてしまい申し訳ありません。
半角の空白で一つ一つ分割することでしたら、できます。
ただそれをどうやって配列につなげていくのかが分かりません。
例えばString.splitはそれだけで返り値としてString[]配列を得られます。
https://docs.oracle.com/javase/jp/8/docs/api/java/lang/String.html#split-java.lang.String-
まずはできるところまでのコードをがんばってご自分で書いて、質問文に修正、追記しましょう。そうすることで「どこが分からないのか」回答者にも判断が付きやすくなります。丸投げと判断されるだけで回答は付きづらくなります。
外国人から日本人に代わってますが、またですか?
dodox86様
おっしゃる通りです。ただ、訂正であげたように全部ばらばらにするしか方法が分かりません…。
asahina1979様
同様の質問があったのでしょうか?参考にしたいので、よろしければどのようなタイトルだったか教えていただけないでしょうか?