import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
public class WordReaderTest {
public static void main(String[] args) {
// WordReaderDsp(new FileWordReader("Test.txt", "UTF-8"));
System.out.println("2次元配列array[y][x]の四隅を指定せよ。");
System.out.println("array[y][x]の引数を「x」「y」の順番で入力する、「x」「y」は「0~2」の半角数字を入力する、「x」「y」の間にはスペースを入れる。");
System.out.println("エラーにならない限りは4回まで入力できます。");
System.out.println();
System.out.println("入力を開始して下さい。");
WordReaderDsp(new Scanner2());
}
public static void WordReaderDsp(IFWordReader wr) {
char[][] array = new char[3][3];
for (int k = 1; k <= 4; k++) {
try {
int x = (int) Float.parseFloat(wr.next());
int y = (int) Float.parseFloat(wr.next());
array[y][x] = '●';
System.out.printf("array[%d][%d]%n", y, x);
for (int i = 0; i < array.length; i++) {
char[] c1 = array[i];
for (int j = 0; j < array.length; j++) {
char c0 = c1[j];
System.out.print(c0 == 0 ? '□' : c0);
}
System.out.println();
}
System.out.println();
} catch (ArrayIndexOutOfBoundsException ex) {
System.out.println("Array Index Out Of Bounds Exception.");
break;
} catch (NullPointerException ex) {
break;
}
}
System.out.print("End.");
}
}
interface IFWordReader {
public String next();
}
class FileWordReader implements IFWordReader {
ArrayList<String> buffere = new ArrayList<String>();
public FileWordReader(String file, String encoding) {
try (
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), encoding));) {
String line = null;
while ((line = reader.readLine()) != null) {
String[] lbuf = line.split(" ");
// System.out.println(line);
for (String s : lbuf) {
if (0 < s.compareTo("")) {
buffere.add(s);
}
}
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
public String next() {
String res = null;
try {
res = buffere.remove(0);
} catch (IndexOutOfBoundsException e) {
res = null;
}
return res;
}
}
class Scanner2 implements IFWordReader {
Scanner sc;
public Scanner2() {
sc = new Scanner(System.in);
}
public String next() {
return sc.next();
}
}
コメント
コメントを投稿