Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Given the Java code below from the producer-consumer problem, change it so the code no longer uses Generics (which are called Templates in C++) but

  1. Given the Java code below from the producer-consumer problem, change it so the code no longer uses Generics (which are called Templates in C++) but instead uses Integer, and replace the arrays with ArrayList. Have the user input the buffer size at run time to match with the use of ArrayList instead of an array. Modify the code so it no longer implements an interface.

public class BufferImpl implements Buffer

{

private static final int BUFFER_SIZE = 5;

private E[] elements;

private int in, out, count;

public BufferImpl() {

count = 0;

in = 0;

out = 0;

elements = (E[]) new Object[BUFFER_SIZE];

}

// producers call this method

public void insert(E item) {

while (count == BUFFER_SIZE)

; // do nothing -- no free space

// add an element to the buffer

elements[in] = item;

in = (in + 1) % BUFFER_SIZE;

++count;

}

// consumers call this method

public E remove() {

E item;

while (count == 0)

; // do nothing - nothing to consume

// remove an item from the buffer

item = elements[out];

out = (out + 1) % BUFFER_SIZE;

--count;

return item;

}

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored 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

Recommended Textbook for

The Routledge Companion To Accounting Education

Authors: Richard M.S. Wilson

1st Edition

0415697336, 9780415697330

Students also viewed these Databases questions