-2

私のコードはスタックが初めてで、特にバッファリングされたリーダーでそれらを実装する方法がわかりません。プログラミングが初めてのスタックコードを実装する方法がわかりません。txt ファイルから読み取った方向を逆にして出力するプログラムを作成する必要があります。

try
{
    BufferedReader in = new BufferedReader(new FileReader("GoingThere.txt"));
    String line = in.readLine();
    while(line != null)
    {
           line.replace("West","East");
           line.replace("East","West");
           line.replace("North", "South");
           line.replace("South", "North");      
           line = in.readLine();
    }
}
catch(FileNotFoundException e)
{ 
  System.out.println("File Not Found"); 
}
catch(IOException e)
{ 
  System.out.println("IO Exception Found.");
}
4

2 に答える 2

0

あなたの質問は私を深く混乱させます。ただし、コードとテキストファイルの名前から、あなたがやろうとしていることを推測できると思います。A->Bの方向のリストを提供する学校の課題があると思います。B->Aを与えるには、スタックを使用してこれらの方向を逆にする必要があります。その仮定に基づいて、次のことを試してください。

Stack st = new Stack();
while (line != null) {
    st.push(line);
    line = in.readLine();
}

次に、を使用st.pop()して、逆の順序でスタックから行を回復できます。

于 2013-02-18T20:54:38.053 に答える
0
The Same of your Codes but I Added The Stack  Hope you Understand it 
The implementation of stack :
Stack <String> stack = new Stack<String>();
stack.push(String);
stack.pop();

here is the  Same Example :

       Stack <String> stack = new Stack<String>();

    try
        {
        BufferedReader in = new BufferedReader(new FileReader("GoingThere.txt"));
        String line = in.readLine();
        String a,b,c,d;
        while(line != null)
        {
        System.out.println(a=line.replace("West","East"));
        System.out.println(b=line.replace("East","West"));
        System.out.println(c=line.replace("North", "South"));
        System.out.println(d=line.replace("South", "North"));

        stack.push(a);
        stack.push(b);
        stack.push(c);
        stack.push(d);    
        System.out.println("----------------- Stack Pushed -----------------");
        line = in.readLine();
        }
        System.out.println("Pop is Begin :");

        while(!stack.isEmpty()){

            System.out.println(stack.pop());
        }
        }

        catch(FileNotFoundException e)
        { 
          System.out.println("File Not Found"); 
        }
        catch(IOException e)
        { 
          System.out.println("IO Exception Found.");
        }
于 2013-02-18T21:14:20.847 に答える