Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 07.12.2017
Сообщений: 13

Нужно разобраться в коде

24.01.2019, 23:25. Показов 1604. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Прошу помочь написать комментарии, особенно с 14 по 22 строку. Нужно обьяснить код, как оно работает
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Protected void OnSearch() {
      DefaultMutableTreeNode root = GetSelectedNode(); 
      if (root == null)
            return;
          LocalDate minValue = LocalDate.of(9999, Month.JANUARY, 01);
          DefaultMutableTreeNode oldest = null;
          Enumeration<DefaultMutableTreeNode> enm = root.postorderEnumeration();
          while (enm.hasMoreElements()) {
      DefaultMutableTreeNode currentNode = enm.nextElement();
          Object data = currentNode.getUserObject();
          if (!(data instanceof Products))
      contunue;
          LocalDate value = ((Products) data).getdatepostprod();
          if (value.getYear() < minValue.getYear()) {
      minValue = value;
      oldest = currentNode;
          } else if (value.getMonth Value() < minValue.getMonthValue()) {
      minValue = value;
      oldest = currentNode;
          } else if (value.getDayOfMonth() < minValue.getDayOfMonth ()) {
      minValue = value;
      oldest = currentNode;
          }
         }
         SelectedNode(oldest);
         ((AnyData) oldest.getUserObject()).showDialog(true);
      }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.01.2019, 23:25
Ответы с готовыми решениями:

Нужно разобраться в коде
А именно прокомментируйте,если не сложно Помогите пожалуйста! package qwerqwre; import java.util.Scanner; import...

Нужно разобраться в коде
Какая строка за что отвечает? Больше ничего нет, только ввод переменных и вывод результата. Сама программа это шифр Цезаря. ...

нужно разобраться в коде
Определить минимальный положительный элемент главной диагонали матрицы А(5,5) и заменить все элементы строки и столбца,в котором он...

5
0 / 0 / 0
Регистрация: 13.07.2017
Сообщений: 12
25.01.2019, 02:35
•Protected значит его можно будет переопределить
•DefaultMutableTreeNode какой-то класс который я не знаю. Создается его экземпляр root и присваевается GetSelectedNode(); которые тоже остается "за кадром". Судя по всему он возрящает экземпляр класса DefaultMutableTreeNode.
•if (root == null) return; проверка на то что GetSelectedNode(); не вернул нам "пустоту" тобишь null. Если все таки вернул то выходим из функции.
•LocalDate minValue = LocalDate.of(9999, Month.JANUARY, 01); создаем переменную minValue для храниния даты которую возращает LocalDate.of(...);
•DefaultMutableTreeNode oldest = null; создаем еще один экземпляр DefaultMutableTreeNode "пустой" тобишь null.
•Enumeration по всей видимости массив/лист/список. Значит создаем список для DefaultMutableTreeNode. В него засовываем root.postorderEnumeration(); (из второй моей точки)
•Ну а дальше цикл, перебор того списка.
•Бла бла извлекаем какой-то object из каждого DefaultMutableTreeNode по порядку.
•if (!(data instanceof Products))contunue; т.е. если этот объект это не класс Products то "листаем" дальше.
•LocalDate value = ((Products) data).getdatepostprod();
(Products) data - говорим что data (Object) это класс Products чтобы мы могли с ним взаимодействовать так, как если бы это был Products. Для этого мы делали проверку выше если вдруг нам "подсунули" что-то иное.
.getdatepostprod(); - извлекаем дату из нашего data (который уже оказывается Products).
•Далее идет цепочка if else
if (value.getYear() < minValue.getYear()) {
minValue = value;
oldest = currentNode;
}
Если год нашего объекта будет меньше чем minValue.getYear() (а мы указали там супер 9999 год, т.е. в первый раз всегда будет true), то в minValue записываем дату нашего Products. Таким образом minValue, после всей переборки, будет хранить дату самой молодой/свежей/последней Products.
•Однако, если следующий Products будет старше предыдущего или того же года, то
if (value.getMonth Value() < minValue.getMonthValue()) {
minValue = value;
oldest = currentNode;
}
То сравниваем месяца. Выясняем кто же все таки "свежее". Однако, думаю здесь ошибка...
Значит приходит Products 2008/5/10. Записывается в minValue
Затем приходит Products 2009/4/12. Он старше, так что проверку на год не проходит. А раз так, переходит в след. if на проверку по месяцам. В то время как он должен был "отбросить его в сторону". Ну раз не отбросил, получается что 4<5 и 2009/4/12 записывается как наименьший возраст.
•Затем, та же самая канитель для дней.
•забыл про переменную oldest. Все же этот алгоритм должен искать самый старый Products а не молодой?
Цитата Сообщение от Dimflex Посмотреть сообщение
Нужно обьяснить код, как оно работает
скорее как оно НЕ работает
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
25.01.2019, 09:29
Цитата Сообщение от pro100kryto
•Protected значит его можно будет переопределить
Protected значит несколько другое. Переопределить можно любой не-final метод родителя. Хоть private...
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
25.01.2019, 10:08
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Хоть private...
точно?
2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
25.01.2019, 10:32

Не по теме:

Тьфу ты, блин

0
528 / 263 / 70
Регистрация: 11.12.2016
Сообщений: 1,223
25.01.2019, 11:39
Цитата Сообщение от xoraxax Посмотреть сообщение
точно?
А если в локальном классе?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.01.2019, 11:39
Помогаю со студенческими работами здесь

Нужно разобраться в коде
Написать программу, которая в произвольном текстовом файле определяет количество предложений и слов, строчных и заглавных символов, знаков...

Нужно разобраться в коде
Здравствуйте,дело в том ,что немогу понять то,что конкретно происходит в данном куске кода. int stat = new int { 0, 0, 0, 0, 0, 0, 0 }; ...

Нужно разобраться в коде
никак не могу понять назначение этой части в коде N_FFT = float(len(y)) f = np.arange(0,Fs/2,Fs/N_FFT) w = np.hanning(len(y)) y_f...

Нужно разобраться в коде
Откомментируйте пожалуйста по строчке ,кто ,что может,а то не могу разобраться,это программа обход бинарного дерева в глубину справа налево...

Нужно разобраться в коде
Господа, я новичок. Хочу разобраться в коде. Задача была изменить размер консольного окна. И, поискав на форуме, нашел ниже написанный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru