Awel, Integer.valueOf(str) is een static method dat een Integer object gaat terug geven van de String die meegegeven wordt. Op voorwaarde natuurlijk dat de String een correct getal voorstelt, want anders gaat hij een NumberFormatException smijten.
intValue() gaat een int (primitieve) teruggeven van Integer instance.
Integer.intValue gaat niet, want dat is geen static method. Hiervoor is dus een instance voor nodig.
Dus als ge een String wilt omzetten naar een primitive int kunde beter Integer.parseInt(str) gebruiken ipv Integer.valueOf(str).intValue().
Tenslotte met de auto boxing en unboxing mogelijkheden vanaf Java 1.5 kunt ge tegenwoordig het volgende doen:
int x = Integer.valueOf("123");
Maar achter de schermen gaat er eerst een Integer instance terug geven worden en dan gaan ze die "unboxen" naar een primitive int.
In pre-1.5-versies moet ge dat niet proberen
Check also:
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html
*edit* hoort eigenlijk thuis in "Programming & Gamedesign"