この非常に単純なスタック コンセプトの実装を作成しました。それが正しくてきれいかどうか教えていただけますか?悪いコーディング習慣はありますか?
public class MyStack
{
private static final int MAXELEMENTS = 10;
private int[] elements;
private int numElements;
public MyStack()
{
numElements = 0;
elements = new int[MAXELEMENTS];
}
public boolean isEmpty()
{
return (numElements == 0);
}
public boolean isFull()
{
return (numElements == MAXELEMENTS);
}
public void push(int e)
{
if (!isFull())
elements[numElements++] = e;
}
public int top()
{
if (!isEmpty())
return elements[numElements - 1];
else
return -1;
}
public void pop()
{
if (!isEmpty())
numElements--;
}
}
次のコードで使用できます。
class MyStackTestDrive
{
public static void main(String[] args)
{
MyStack s1 = new MyStack();
MyStack s2 = new MyStack();
s1.push(2);
s2.push(4);
System.out.println(s1.top());
System.out.println(s2.top());
}
}