###前提・実現したいこと
ファイルで読みこんだものをリストを使ってかえしたいです。
該当のソースコード
import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Random; public class uranai { public static void main(String[] args) { Random r = new Random(); String[] seiza = {"おひつじ座", "おうし座", "ふたご座", "かに座", "しし座", "おとめ座", "てんびん座", "さそり座", "いて座", "やぎ座", "みずがめ座", "うお座"}; int[] rank = new int[12]; int random, temp; for(int i = 0; i < 12; i++) { rank[i] = i; } for(int i = 11; i >=0; i--) { random = r.nextInt(i + 1); temp = rank[i]; rank[i] = rank[random]; rank[random] = temp; } System.out.println(); System.out.println("今日のランキングはこちら!"); System.out.println(); for(int i = 0; i < 12; i++) { System.out.println(); System.out.println(i + 1 +"位:" + seiza[rank[i]]); System.out.println(); System.out.println("今日のラッキーアイテムはこちら!"); String road = fileRoad(); } System.out.println(); System.out.println("今日の占いは終了です!"); } public static String fileRoad() { // ファイル読み込み String data; String road = ""; List<String> itemList = new ArrayList<String>(); try { File file = new File("./uranai/uranai.txt"); // 相対パス if(file.exists()) { FileReader filereader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(filereader); while((data = bufferedReader.readLine()) != null){ itemList.add(data); } bufferedReader.close(); }else { System.out.print("ファイルは存在しません"); } }catch (IOException e) { e.printStackTrace(); } Collections.shuffle(itemList); System.out.println(itemList.get(0)); return road; } }
試したこと
補足情報(FW/ツールのバージョンなど)
質問はなんでしょうか。
質問の途中で投稿したんだと思いますが…
> kadai5
出題者に聞く方がいいかと思いますよ。
質問は編集できます。
タイトルとコードだけではどんな要件を満たすために作られたものでどこまで出来ていて現在起きている問題は分かりません。
また、
ackage
となっているのでコンパイルエラーになるはずです。
課題なら出題者に質問するべきだし、「ファイルで読みこんだものをリストを使ってかえしたいです。」
とだけ言われてもさ、
「で、今このコードに何の問題があるんですか?」ってなりませんか?コードだけ渡されて要求通りに
コード書き換えてくれるサイトじゃないですよ?
宿題代行サイトかボランティア家庭教師が教えてくれるサイトだとでも思ってるんだろうなぁ。
ガイドライン100回音読して出直した方が良い。
ここまでコードを書いていて分からない、と言うのも謎。
他人のコードを読むだけでも意外と労力を要する。
それが自分の仕事ならまだわかるが、なんで赤の他人のためにやらないといけないのでしょうか。
本人も努力しているのならともかく、『俺様のためにやれ』でしょ?
プログラマやSEは『考える事』と『調べる事』が仕事です。
それなのに自分で調べようともしない、自分で考えようともしない、自分でやろうともしない。
その割には『俺様のためにやるのが当たり前』と言う考え。
だったら白紙で出すべきです。
私なら興味のない科目とかは完全に捨てます。(丸投げすらしない)
ご自分の質問を『第三者的視点で』、フラットな状態で読んでみてください。
つまり、後輩か誰かに同じような質問(?)をされたと考えてみてください。
あなたの回答
tips
プレビュー