-5
這是一個愚蠢的問題,我不好意思問這個問題,但我因時間緊迫而被燒燬。將這些電路板保存到數據結構中
我有這樣的樣本輸入:
1 4 2
3 0 5
6 7 8
3 1 2
6 4 5
0 7 8
-1 -1 -1
每一組數字代表的8拼圖的板,我不知道有多少板將出現在文本文件中。我只知道它的結尾標有 - 1 -1 -1.
我知道這件事的邏輯很簡單,我只是很累,不能讓代碼工作。
的第一板的輸出應該是:
142305678
和第二個
312645078
我越來越:
142142142
312312312
這裏是我到目前爲止的代碼:
package puzzle;
import java.io.*;
import java.util.*;
/**
*
* @author Administrator
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void saveTheLine (String [] splittedLine) {
}
public static void main(String[] args) throws IOException{
// TODO code application logic here
FileReader fr = new FileReader("E://Documents and Settings//Administrator//My Documents//NetBeansProjects//8Puzzle//src//puzzle//ocho.in");
BufferedReader br = new BufferedReader(fr);
/*
String line = br.readLine();
while (!line.equals("-1 -1 -1")) {
line= br.readLine();
//ArrayList <String> board = new ArrayList<String>();
String board = new String("");
while (!line.equals(null))
{
board = board + line;
line= br.readLine();
}
System.out.println("a board is " + board);
}
*/
while (true) {
String line= br.readLine();
if (!line.equals("-1 -1 -1")){
if (line.equals(" ")) {
continue;
}
String board = new String (" ");
ArrayList<String> board2 = new ArrayList<String>();
for (int i =0; i<3; i++){
String [] splittedLine = line.split(" ");
board = line+board;
for (int addToBoardIndex =0; addToBoardIndex < splittedLine.length; addToBoardIndex++){
board2.add(splittedLine[addToBoardIndex]);
}
br.readLine();
}
//System.out.println(board);
for (String s : board2) {
System.out.print(s);
}
System.out.println(" ");
}
else if (line.equals("-1 -1 -1")) {
break;
}
}
/*String line = br.readLine();
while (!line.equals("-1 -1 -1"))
{
//StringBuilder board = new StringBuilder("");
ArrayList<String> board = new ArrayList<String>();
for (int lineIndex =0; lineIndex<3; lineIndex++){
line = br.readLine();
String [] splittedLine = line.split(" ");
board.add(splittedLine [0]);
board.add(splittedLine [1]);
board.add(splittedLine [2]);
}
for (String boardIndex: board){
System.out.println(boardIndex);
}
String blankLine = br.readLine();
}*/
}
}
什麼問題?你得到了什麼類型的輸出,你期望什麼類型?發佈內容有什麼意義(更不用說了)註釋掉了代碼或空方法? – 2009-12-10 01:05:58
那麼,你可能希望你的空行檢查是:if(line.trim()。equals(「」))而不是if(line.equals(「」))。 – Roman 2009-12-10 01:09:23
爲什麼使用trim()? – andandandand 2009-12-10 01:11:31