Qual'è l'intero massimo utilizzabile in un programma con riferimento al seguente script in java?
codice:
// Improved Stack class that uses the length array member.
class Stack {
private int stck[];
private int tos;
// allocate and initialize stack
Stack(int size) {
stck = new int[size];
tos = -1;
}
// Push an item onto the stack
void push(int item) {
if(tos==stck.length-1) // use length member
System.out.println("Stack is full.");
else
stck[++tos] = item;
}
// Pop an item from the stack
int pop() {
if(tos < 0) {
System.out.println("Stack underflow.");
return 0;
}
else
return stck[tos--];
}
}
class Esempio {
public static void main(String args[]) {
int x=2_147_483_647;
Stack mystack1 = new Stack(5);
Stack mystack2 = new Stack(x);
// push some numbers onto the stack
for(int i=0; i<5; i++) mystack1.push(i);
for(int i=0; i<x; i++) mystack2.push(i);
// pop those numbers off the stack
System.out.println("Stack in mystack1:");
for(int i=0; i<5; i++)
System.out.println(mystack1.pop());
System.out.println("Stack in mystack2:");
for(int i=0; i<x; i++)
System.out.println(mystack2.pop());
}
}
Perché non posso scrivere int x=2_147_483_647; ?