Skip to content

Commit 4e2bb3e

Browse files
authored
Create queue1
1 parent a14c7ab commit 4e2bb3e

File tree

1 file changed

+94
-0
lines changed

1 file changed

+94
-0
lines changed

queue1

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
package queue;
2+
3+
import java.lang.reflect.Array;
4+
import java.util.Scanner;
5+
public class Queue {
6+
public Integer pointer;
7+
private final Integer sizeArray;
8+
private final T[] element;
9+
10+
public Queue(Class namaClass, Integer size) {
11+
pointer = -1;
12+
sizeArray = size;
13+
element = (T[]) Array.newInstance(namaClass, size);
14+
}
15+
16+
public void enqueue(T data)
17+
{
18+
if(pointer < (sizeArray - 1))
19+
{
20+
pointer++;
21+
element[pointer] = data;
22+
}
23+
else
24+
{
25+
System.out.println("Queue Sudah Penuh");
26+
}
27+
}
28+
29+
public void dequeue()
30+
{
31+
if(pointer >= 0) {
32+
for (Integer i = 0; i <= pointer; i++) {
33+
element[i] = element[i + 1];
34+
}
35+
pointer--;
36+
}
37+
else
38+
{
39+
System.out.println("Queue Sudah Kosong");
40+
}
41+
}
42+
public void viewQueue()
43+
{
44+
for(Integer i = 0; i <= pointer; i++)
45+
{
46+
System.out.print(element[i]);
47+
System.out.print(" ");
48+
}
49+
}
50+
51+
public void clearQueue()
52+
{
53+
pointer = -1;
54+
}
55+
56+
public static void main(String[] args)
57+
{
58+
Integer pil;
59+
Queue queue = new Queue<>(String.class, 10);
60+
Scanner scanner = new Scanner(System.in);
61+
62+
do
63+
{
64+
queue.viewQueue();
65+
System.out.println();
66+
System.out.println("1. Enqueue");
67+
System.out.println("2. Dequeue");
68+
System.out.println("3. Clear");
69+
System.out.println("4. Exit");
70+
pil = scanner.nextInt();
71+
if(pil > 0 && pil < 4)
72+
{
73+
switch (pil) {
74+
case 1:
75+
String data;
76+
System.out.print("Masukkan Data: ");
77+
data = scanner.next();
78+
queue.enqueue(data);
79+
break;
80+
case 2:
81+
queue.dequeue();
82+
break;
83+
case 3:
84+
queue.clearQueue();
85+
break;
86+
default:
87+
break;
88+
}
89+
}
90+
else
91+
break;
92+
}while(true);
93+
}
94+
}

0 commit comments

Comments
 (0)