Gebruik van Stacks in Java

Pagina: 1
Acties:
  • 103 views sinds 30-01-2008
  • Reageer

  • J.Hollemans
  • Registratie: September 2001
  • Laatst online: 03-10-2025
Ik weet wat een stack is en hoe ik er zelf een moet
maken en gebruiken, maar voor een opdracht moet ik"de Stack implementatie van Java, java.util.Stack" :?
gebruiken.

Wat houd dit in en hoe doe ik dat ?

Far from being some stuffy science, writing regular expressions is closer to an art.


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

java.util.Stack is gewoon een Stack implementatie die je kunt gebruiken met push, peek en pop.

Zie ook de JavaApiDocumentatie: http://java.sun.com/j2se/1.3/docs/api/index.html

  • The - DDD
  • Registratie: Januari 2000
  • Laatst online: 03-09 16:40
http://java.sun.com/j2se/1.3/docs/api/java/util/Stack.html

Dat is de precieze pagina over de Stack class in java.util

Ooit wel is met vectoren gewerkt? Nou die Stack klasse is dus een Vector met 5 extra methoden. Simpel.

Inhoud voor simpele main methode:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Stack jouStack = new Stack();

jouStack.push(Integer(1));
jouStack.push(Integer(2));
try {
Integer OInt1 = (Integer)jouStack.pop();
Integer OInt2 = (Integer)jouStack.peek();
Integer OInt3 = (Integer)jouStack.pop();
Integer OInt4 = (Integer)jouStack.pop();
}
catch (EmptyStackException)
{
System.out.println("Stack is leeg.");
}
System.out.println(OInt1.toString()); // print de waarde: 2
System.out.println(OInt2.toString()); // print de waarde: 1
System.out.println(OInt3.toString()); // print de waarde: 1
// De volgende statement zou een exception opwerpen,
// een NullPointerException als ik het zo 1,2,3 goed heb.
// OInt4 heeft geen betekenis, want hij's niet geinstantieerd.
//System.out.println(OInt4.toString());

Output:
code:
1
2
3
4
2
1
1
Stack is leeg.

  • J.Hollemans
  • Registratie: September 2001
  • Laatst online: 03-10-2025
Heb ik geprobeerd, maar ik krijg de melding:

"Class Stack not found."
Stack myStack = new Stack();
^

moet ik eerst java.util.Stack includen of zo ?

(klinkt misschien dom, maar ik ben nog maar 1 weekje
met Java bezig...)

Far from being some stuffy science, writing regular expressions is closer to an art.


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 21-09 13:51

Janoz

Moderator Devschuur®

!litemod

Je moet idd ff bovenaan in je java progje ff
code:
1
import java.util.Stack;

neerzetten.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Reefer
  • Registratie: Mei 2000
  • Laatst online: 21-02-2025

Reefer

madness

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.util.Stack;
import java.util.EmptyStackException;
import java.lang.Integer;

public class Apl
{   public static void main(String[] args)
    {   Stack jouStack = new Stack();
        Integer Oint1=null;
        Integer Oint2=null;
        Integer Oint3=null;
        Integer Oint4=null;

        jouStack.push(new Integer(1));
        jouStack.push(new Integer(2));

          try {
            Oint1 =(Integer)jouStack.pop();
            Oint2 =(Integer)jouStack.peek();
            Oint3 =(Integer)jouStack.pop();
            Oint4 =(Integer)jouStack.pop();
        }
            catch (EmptyStackException e)
          { System.out.println("Stack is leeg.");
          }
        
            System.out.println(Oint1.toString()); // print de waarde: 2
        System.out.println(Oint2.toString()); // print de waarde: 1
        System.out.println(Oint3.toString()); // print de waarde: 1
    }
}

Als je het zo doet dan compileert het ook nog ;) maar ik krijg als output :

Stack is leeg
2
1
1

dus andersom.

A Breakbeat A Day Keeps Religion Away.


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Dat klopt, hij vangt eerst de Exception af en gaat dan pas de waardes printen.

voor de rest klopt het . hij zet eerst de 1 dan de 2 op de stack, en hij leest ze er in omgekeerde volgorde weer vanaf..
Pagina: 1