Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

JAVA PROBLEM: Charstack Class: I cannot execute the following charstach class - I get java.lang.OutOfMemoryError, can you please help to identify what the error is?

JAVA PROBLEM: Charstack Class: I cannot execute the following charstach class - I get java.lang.OutOfMemoryError, can you please help to identify what the error is?

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

import java.io.*;

public class CharStack { private char[] m_data; private int m_ptr; public CharStack(int size) { m_ptr = 0; m_data = new char[(size > 1 ? size : 10)]; } public void push(char c) { if (m_ptr >= m_data.length) { // Grow the array automatically char[] tmp = new char[m_data.length * 2]; System.arraycopy(m_data, 0, tmp, 0, m_data.length); m_data = tmp; } m_data[m_ptr++] = c; } public char pop() { return m_data[--m_ptr]; } public boolean hasMoreElements() { return (m_ptr != 0); } public static void main(String[] argv) throws IOException { CharStack s = new CharStack(10); int i; while ( (i = System.in.read()) != -1 ) { s.push((char) i); } while (s.hasMoreElements()) { System.out.write(s.pop()); } System.out.println(); } }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions