package Schildt.Chapter5;
class Queue {
char q[]; // массив для хранения элементов очереди
int putloc, getloc;
Queue(int size){
q = new char[size+1];
putloc = getloc = 0;
}
void put(char ch) {
if (putloc == q.length - 1){ //
System.out.println(" -Очередь заполнена");
return;
}
putloc++;
q[putloc] = ch;
}
char get () {
if (getloc == putloc) {
System.out.println(" - Очередь пуста");
return (char) 0;
}
getloc++;
return q[getloc];
}
}
class QDemo {
public static void main(String args[]) {
Queue bigQ = new Queue(104);
Queue smallQ = new Queue(14);
char ch;
int i;
System.out.println("Использование очереди ЬigQ для сохранения алфавита");
for(i=0; i < 26; i++) // зачем тут цикл?
bigQ.put((char) ('A' + i)); // что делает эта часть?
System.out.print("Содержимое очереди ЬigQ: ");
for (i=0; i < 26; i++) { // что делает эта часть?
ch = bigQ.get(); // что делает эта часть?
if (ch != (char) 0) System.out.print(" "+ch);
}
System.out.println("\n");
System.out.println("Использование очереди smallQ для генерации ошибок");
for(i=0; i < 5; i++) {
System.out.println("Попытка сохранения " + ( char) ( 'z' - i) ) ; // что делает эта часть?
smallQ.put((char) ('z' - i));
System.out.println();
}
System.out.println();
System.out.println("Содержимое smallQ: ");
for(i=0; i < 5; i++) {
ch = smallQ.get();
if (ch != (char) 0) System.out.print(ch);
}
}
}
Jake
9 уровень
что делает этот код? и как он работает в классе QDemo?
Решен
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Александр Работает в поиске работы
14 апреля 2021, 10:36
зачем для q выделяется место на size+1 а не просто на size символов?
0
Стас Пасинков Software Developer в Zipy Master
24 апреля 2020, 14:37
char - это же цифровой тип данных. он в себе хранит числа, по сути
0
Ksenia MarioMaster
24 апреля 2020, 14:27
найди что такое дебаг , запусти в идеи и посмотри как он работает
+1