1 | |||||||||||||||||||||
Как реализовать поиск класса по его имени?26.04.2018, 13:46. Показов 1193. Ответов 15
Метки нет Все метки)
(
Есть базовый клас, описывающий химические елементы:
внутри класа находятся две колекции:
С - клас С (Углерод) Н - Клас Н (Водород) О - Клас О (Кислород), создавал их екземпляры и помещал в ArrayList<Element> el. если после елемента стоит число, это число добавляем в ArrayList<Integer> ind, а если числа нет в ArrayList<Integer> ind вносим 1. если елемент уже существует в списке, увеличиваем соответсвующее количество в ArrayList<Integer> ind. таким образом, конструктор должен собрать(Согласно примеру): el : (0) - С; (1) - Н ; (2) - О ind : (0) - 1; (1) - 4; (2) - 1 ПС. Пробовал реализовать через посимвольное чтение строки - получился полный бред, запутался аки ёжик в тумане, теперь сижу чеше репу шоДелать?
0
|
|
26.04.2018, 13:46 | |
Ответы с готовыми решениями:
15
Как реализовать сравнение по имени файла,а не по его содержимому?
Поиск класса по имени Вызов класса по его имени |
![]() 3638 / 2970 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
26.04.2018, 14:01 | 2 |
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
26.04.2018, 14:32 | 3 |
0
|
Am I evil? Yes, I am!
![]() ![]() 16257 / 9013 / 2605
Регистрация: 21.10.2017
Сообщений: 20,716
|
|
26.04.2018, 15:35 | 4 |
InvalidCode, Ну, если тебя не смущают 118 классов, можно сделать свич со 118 кейсами
![]()
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
26.04.2018, 18:37 | 5 |
iSmokeJC, а он не вручную будет свичи писать!
0
|
27.04.2018, 09:32 [ТС] | 6 |
Уточнять и ничвего не нужно. все поля уже есть в базовом класе Element, но в эти поля нужно задать значения для конкретного елемента (а их сейчас известно 118), а в скоре будет еще больше. В этом и выгода что бы добавить в систему новый елемент, или откоректировать уже существующий елемент, не надо рыться по всех закоулках, а только создать/откоректировать клас-конструктор. здесь ввнесены лишь базовые свойства елементов, со временем я добавлю туда и другие:
валентность, радиус атома, валентный радиус, ступени окисления, изотопы время их жизни... соответсвенно проще изменить один базовый клас, дописав в нем несколько методов, и добавив еще одну строчку в клас-конструктор. Добавлено через 3 минуты к тому же, изменение базовых свойст елементов (таже маса) не опишешь никакими математичискими функциями и циклами. их нужно вбивать только вручную. если не веришь, посмотри в таблицу Менделева.
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
27.04.2018, 09:33 | 7 |
InvalidCode, дружище, жаль, что ты не понял главной фишки наследования((.
0
|
27.04.2018, 09:39 [ТС] | 8 |
возможно и не понял. я ведь не програмист, а химик, а жабу начал изучать наспор. поспорил как-то со знакомим програмистом, что за пол года освою хотя бы один язык програмирования на сносный уровень. освоил, начал писать програмки - понравилось, с тех пор увлекаюсь быдлокодингом
![]()
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
27.04.2018, 09:45 | 9 |
Вот, скажем, ты нашел, 2 водорода и один кислород. Дальше то что? Как ты поймешь, что это вода?
Добавлено через 3 минуты на то и волки... Лан, на коньяк то хоть спорил? И кто определял сносность твоего уровня?
0
|
27.04.2018, 09:50 [ТС] | 10 |
а есть еще варианти? в неорганике с этим проще, там формулы однозначные, это в органике имеет значение порядок расположения. хотя, для данного класа и это не важно. Он сбивает все елементы в общую формулу, и далнейшие исчисления проводит исходи из нее, например:
С2Н5 ОС3Н7 = С5Н12 О - со своторой формулой и работаем, а на вход можно подать любой из вариантов формулы. вот именно эту реализацию спивки елементов по групам, и нужно реализовать
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
27.04.2018, 09:56 | 11 |
0
|
27.04.2018, 10:04 [ТС] | 12 |
Спорили на ящик водки (потом его вместе и выжрали), а в качестве проверки нежно было написать програму, которая бы создавала НТML листинг с подсветкой синтаксиси (вроде того, что здесь на форуме) для изучаемого мной языка. условия просты - прога работает - ящик берет он, не работает беру я. вот и все.
Добавлено через 5 минут ето еще в планах, но должно быть: - исчисление масы молекулы - исчисление возможных вариантов структуры (после прикрутки валентности) - ислисление длин и енергий связи (После прикрутки других характеристик атома (радиус, валентный радиус, енергия ионизации 1, 2... 7 уровня)) ...
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
27.04.2018, 10:14 | 13 |
InvalidCode, замах большой))
0
|
2442 / 1898 / 475
Регистрация: 17.02.2014
Сообщений: 9,154
|
|
27.04.2018, 10:27 | 15 |
InvalidCode, думаю, что все это уже давно реализовано в ПО для спектрографов...
0
|
![]() 4442 / 2676 / 481
Регистрация: 28.04.2012
Сообщений: 8,529
|
|
27.04.2018, 14:12 | 16 |
А можно не забивать гвозди микроскопом, а использовать только один класс, тогда всё то же самое и "искать классы по имени" не придётся.
0
|
27.04.2018, 14:12 | |
Помогаю со студенческими работами здесь
16
Как реализовать поиск минимального и максимального элемента в двух объектах класса сразу?? Автоматический поиск сборок по имени класса Как реализовать поиск в текстовом файле слова, и вывод его перевода? Получение значения атрибута класса по его имени Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |