public class ArravBeurdedQueYe implements QueuelotRTAse protected final int DEFCAP = 100; // default capacity protected T elements; protected int wElAnerts = lin/ number of elements in this queue protected int front = Qin protected int Riv // array that holds queue elements / index of front of queue // index of rear of queue public AtravBouodedve) { elements = (T)) new Object[DEFCAP]; rear = DEFCAP - 1; public AravBoundedliat waxsize) { elements = (T) new Object[maxsje); rear = vaxSze - 1; } public void engueuelT element) // Throws QueueOvertlawExcertierif this queue is full; // otherwise, adds element to the rear of this queue. if (İSEWW) throw new QueuelvertowExcertierl"Enqueue attempted on a full queue."); else rear = (rear + 1) % elementsleneth; elements[rear] = element; OUDElenRAts = QUDElements+ 1; } public T deguRue) // Throws QueyelWodertlavExsertieif this queue is empty; // otherwise, removes front element from this queue and returns it. { if (iSEmotx) throw new QuevevodertlowExcertiel"Dequeue attempted on empty queue."); else T taRetura = elements[front]; elements[front] = null; front = (front + 1) % elementslength: OwDElenents = vDElenents - 1; return toRetua public booleao isEMptel // Returns true if this queue is empty; otherwise, returns false. { return (QupEleRRAts == 0); public booleao isEuW // Returns true if this queue is full; otherwise, returns false. return (QuElemRAts == elementsleDsth); } public int sjzed // Returns the number of elements in this queue. { return numElemRnts

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

how to create a java file that inherit the arrayboundedqueue class show in screen shot and Implement the myqueueInterface interface as an array bounded queue? please also add a space() method that will return how much space is left in the bounded queue in your class. below is the myqueueinterface interface. (note your class must contain the methods from the myqueueinterface interface).

public interface MyQueueInterface<T> extends QueueInterface<T> {
public String toString();
// Creates and returns a string that correctly represents the current queue.

public void remove(int count);
// Removes the front count elements from the queue.
// Throw QueueUnderflowException with message of "Less than count elements in
// queue." if there are less than count elements in the queue.

public void reQueue();
// Dequeue an element from front, and enqueue the element back to rear of the queue.
// Throw QueueUnderflowException with message of "No element in queue."
// if there is no element in the queue.

public void clear();
// Clear entire queue.

public void reverse();
// Reverse queue content. Hint: you may use LinkedStack ADT.

}

then use the driver program shown in screen shot to test.

program should output

fruit cost = 30

below is code for the queueinterface interface.

public interface QueueInterface<T> {

void enqueue(T element) throws QueueOverflowException;

// Throws QueueOverflowException if this queue is full;

// otherwise, adds element to the rear of this queue.

 

T dequeue() throws QueueUnderflowException;

// Throws QueueUnderflowException if this queue is empty;

// otherwise, removes front element from this queue and returns it.

 

boolean isFull();

// Returns true if this queue is full; otherwise, returns false.

 

boolean isEmpty();

// Returns true if this queue is empty; otherwise, returns false.

 

int size();

// Returns the number of elements in this queue.

}

public class ArravReuededQURUR<T> implements Queuelotertare<T>
{
protected final int DEFCAP = 100; // default capacity
protected TH elements;
// array that holds queue elements
protected int wMElenents = lin/ number of elements in this queue
protected int front = Qin
protected int ein
// index of front of queue
/ index of rear of queue
public AcravBevodedQueHAU
elements = (TI)) new Object[DEFCAP];
rear = DEFCAP - 1;
}
public ArravBouodedQveralint vaxsize)
{
elements = (T)) new Object[maxsie);
rear = VaxSize - 1;
}
public void enguRuelT element)
// Throws QyeyevertlowExsertien if this queue is full;
// otherwise, adds element to the rear of this queue.
{
if (İSEUW)
throw new QueveevertlowExcertieal"Enqueue attempted on a full queue.");
else
{
rear = (rear + 1) % elements leneth:
elements[rear] = element;
OwDElements = QDElements+ 1;
}
public T deguRue)
// Throws QueyeUoderflbwExsertien if this queue is empty;
// otherwise, removes front element from this queue and returns it.
if (iŞEmotu)
throw new QueuellodertlowExcertienl"Dequeue attempted on empty queue.");
else
{
T toReturn = elements[front];
elements[front] = null;
front = (front + 1) % elementsleneth:
wDElements = wmElements- 1;
return toRetua
}
}
public booleao isEMptx)
// Returns true
this queue is empty; otherwise, returns false.
{
return (qumElemAnts== 0);
public boelean İSEUW
// Returns true if this queue is full; otherwise, returns false.
{
return (QumElements== elementsleneth);
}
public int sizell
// Returns the number of elements in this queue.
{
return nymElements
}
Transcribed Image Text:public class ArravReuededQURUR<T> implements Queuelotertare<T> { protected final int DEFCAP = 100; // default capacity protected TH elements; // array that holds queue elements protected int wMElenents = lin/ number of elements in this queue protected int front = Qin protected int ein // index of front of queue / index of rear of queue public AcravBevodedQueHAU elements = (TI)) new Object[DEFCAP]; rear = DEFCAP - 1; } public ArravBouodedQveralint vaxsize) { elements = (T)) new Object[maxsie); rear = VaxSize - 1; } public void enguRuelT element) // Throws QyeyevertlowExsertien if this queue is full; // otherwise, adds element to the rear of this queue. { if (İSEUW) throw new QueveevertlowExcertieal"Enqueue attempted on a full queue."); else { rear = (rear + 1) % elements leneth: elements[rear] = element; OwDElements = QDElements+ 1; } public T deguRue) // Throws QueyeUoderflbwExsertien if this queue is empty; // otherwise, removes front element from this queue and returns it. if (iŞEmotu) throw new QueuellodertlowExcertienl"Dequeue attempted on empty queue."); else { T toReturn = elements[front]; elements[front] = null; front = (front + 1) % elementsleneth: wDElements = wmElements- 1; return toRetua } } public booleao isEMptx) // Returns true this queue is empty; otherwise, returns false. { return (qumElemAnts== 0); public boelean İSEUW // Returns true if this queue is full; otherwise, returns false. { return (QumElements== elementsleneth); } public int sizell // Returns the number of elements in this queue. { return nymElements }
//do not modify
public class driver {
public static void main(String[] args) {
Queuelnterface<String> fruits = new MxArravBaundedoQueue<String(10);
int n = 0;
fruits.enaueuel"Apple");
fruits.enaueuel"Orange");
if (fruits.toString().trim().egualslgnoreCase("Apple\nQrange"))
n += 5;
fruits.engueue("Lemon");
((MXActaxBaundedQueue<String>) fruits).remeve(2);
if (fruits.toString().trim().egualslenereCase("Lemon"))
n += 5;
try {
((MYAccaxBaundedQueue<String>) fruits),remexe(2);
} catch (QueuellnderflewExcertion e) {
if (egetMessagel).egualslgnereCase("Less than 2 elements in queue."))
n += 5;
fruits.engueuel"Banana");
fruits.engueue("Pineapple");
((MYAttaxBQundedQueue<String>) fruits),reQueuel);
if (fruits.tostring().trim().equalslgnoreCase("Banana\nPineapple\nLemon")
n += 5;
((MXActaxBaundedQueue<String>) fruits).reversel);
if (fcuits.tostring().trim().equalslgnoreCase("Lemon\nPineapple\nBanana"))
n += 5;
((MYAtraxBoundedQueue<String>) fruits).clear();
if (fruitsisEmetul) && fruits-size() == 0)
n += 5;
System.out.printin("fruits cost =" +n);
}
Transcribed Image Text://do not modify public class driver { public static void main(String[] args) { Queuelnterface<String> fruits = new MxArravBaundedoQueue<String(10); int n = 0; fruits.enaueuel"Apple"); fruits.enaueuel"Orange"); if (fruits.toString().trim().egualslgnoreCase("Apple\nQrange")) n += 5; fruits.engueue("Lemon"); ((MXActaxBaundedQueue<String>) fruits).remeve(2); if (fruits.toString().trim().egualslenereCase("Lemon")) n += 5; try { ((MYAccaxBaundedQueue<String>) fruits),remexe(2); } catch (QueuellnderflewExcertion e) { if (egetMessagel).egualslgnereCase("Less than 2 elements in queue.")) n += 5; fruits.engueuel"Banana"); fruits.engueue("Pineapple"); ((MYAttaxBQundedQueue<String>) fruits),reQueuel); if (fruits.tostring().trim().equalslgnoreCase("Banana\nPineapple\nLemon") n += 5; ((MXActaxBaundedQueue<String>) fruits).reversel); if (fcuits.tostring().trim().equalslgnoreCase("Lemon\nPineapple\nBanana")) n += 5; ((MYAtraxBoundedQueue<String>) fruits).clear(); if (fruitsisEmetul) && fruits-size() == 0) n += 5; System.out.printin("fruits cost =" +n); }
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Concept of Threads
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education