2017-02-13 1 views
0

Я использую -Xlint в командной строке для решения программы на основе Stack, но я получаю предупреждение о своей программе java. Мой код StackDemo.javaпосле использования -Xlint Я получаю предупреждение. Я пытаюсь запустить программу, используя Stack?

import java.util.*; 
public class StackDemo { 

    static void showpush(Stack st, int a) { 
     st.push(new Integer(a)); 
     System.out.println("push(" + a + ")"); 
     System.out.println("stack: " + st); 
    } 

    static void showpop(Stack st) { 
     System.out.println("pop ->"); 
     Integer a = (Integer)st.pop(); 
     System.out.println(a); 
     System.out.println("stack:" + st); 
    } 

    public static void main(String args[]) { 
     Stack st = new Stack(); 
     System.out.println("stack:" + st); 
     showpush(st, 42); 
     showpush(st, 66); 
     showpush(st, 99); 
     showpop(st); 
     showpop(st); 
     showpop(st); 
     showpop(st); 
     try { 
      showpop(st); 
     } 
     catch (EmptyStackException e) { 
      System.out.println("empty stack"); 
     } 
    } 
} 
+0

Вы должны добавить предупреждающее сообщение в вашем вопросе. – freedev

ответ

0

Изменено Stack к Stack<Integer>

import java.util.*; 

public class StackDemo { 

static void showpush(Stack<Integer> st, int a) { 
    st.push(new Integer(a)); 
    System.out.println("push(" + a + ")"); 
    System.out.println("stack: " + st); 
} 

static void showpop(Stack<Integer> st) { 
    System.out.println("pop ->"); 
    Integer a = st.pop(); 
    System.out.println(a); 
    System.out.println("stack:" +st); 
} 

public static void main(String args[]) { 
    Stack<Integer> st = new Stack<Integer>(); 
    System.out.println("stack:" +st); 
    showpush(st, 42); 
    showpush(st, 66); 
    showpush(st, 99); 
    showpop(st); 
     showpop(st); 
    showpop(st); 
    showpop(st); 
    try { 
    showpop(st); 
    } 
    catch(EmptyStackException e) { 
    System.out.println("empty stack"); 
    } 
} 

} 
Смежные вопросы