我有2 File[]
一個有2個完整文件(temp0
和temp1
),一個有2個空的(tempOut0
和tempOut1
)。但是,當我嘗試查看完整文件是否爲空時,它會查看所有文件。爪哇 - `文件[]`沒有做我會想到的
這是我做的陣列:
public msort(File[] tempInPut){
int length = tempInPut.length;
this.inPut = new File[length];
inPut = tempInPut.clone();
System.err.println("test1 " + Arrays.toString(inPut));
this.outPut1 = new File[length];
try{
int i = 0;
while(i< inPut.length){
outPut1[i] = new File(temp_dir + "//tempOut" + i + ".txt");
outPut1[i].createNewFile();
i++;
}
這是他們獲得通過的合併:
public void merge(int outPutNum, File[] inPutArr, File[] outPut1) {
int index = 0;
while(index < inPutArr.length - 1) {
System.err.println("test1 " + Arrays.toString(inPutArr));
if(inPutArr[index].exists() && inPutArr[index].length() == 0){ return; }
index++;
}
}
輸出:
TEST1 [/家庭/ tl113/317/temp0.txt,/home/tl113/317/temp1.txt]
test1 [/home/tl113/317/tempOut0.txt,/home/tl113/317/tempOut1.txt]
有誰知道爲什麼File[]
outPut1
在File[]
inPutArr
結束了?
這個問題似乎很容易用一些打印語句進行調試。 – keyser
我一直在努力幾個小時,不能明白爲什麼。任何幫助將不勝感激。 – 1ftw1
它看起來不像你正在做什麼與你的函數中的outPut1數組。你能再解釋一下你的意思嗎?你期望輸出什麼? – creechy