5 / 5 / 0
Регистрация: 30.10.2013
Сообщений: 180
|
|||||||||||
1 | |||||||||||
Как поменять местами 2 объекта?29.11.2013, 15:24. Показов 8011. Ответов 7
Метки нет (Все метки)
Вычитал что метод в JAVA не может изменять ссылки и переназначать их на новые объекты. Т.е. следующий метод не поменяет местами 2 объекта:
Что бы при создании 2-ух объектов можно было поменять их местами? Чтобы поменять местами one и two в данном примере:
Немного уточню вопрос. Как передать объекту one параметры объекта two.
0
|
29.11.2013, 15:24 | |
Ответы с готовыми решениями:
7
Как поменять элементы массива местами? Как поменять местами элементы массива объектов? Как поменять местами 1-ю строку и 1 столбец в двухмерном массиве? Поменять местами элементы |
84 / 84 / 42
Регистрация: 25.01.2010
Сообщений: 386
|
|
29.11.2013, 15:43 | 2 |
Можно вопрос, а зачем менять местами адреса объектов?
В джаве специально отсутствует адресная арифметика. Вам-то она зачем?
0
|
5 / 5 / 0
Регистрация: 30.10.2013
Сообщений: 180
|
||||||
29.11.2013, 15:54 [ТС] | 3 | |||||
Просто исследую возможности языка Я же еще только знакомлюсь с ним. Ну вот есть у меня 2 объекта:
0
|
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
|
|
29.11.2013, 16:27 | 4 |
Надо сделать метод, который принимает в качестве параметра такой же объект. А внутри этого метода Вы имеете доступ ко всем полям, в том числе и приватным. Можете поменять значения как Вы делали в коде в первом методе. Только не забудьте проверить точный тип параметра - с дочерними классами могут начаться проблемы.
0
|
5 / 5 / 0
Регистрация: 30.10.2013
Сообщений: 180
|
||||||
29.11.2013, 22:46 [ТС] | 5 | |||||
А можете пример кода написать?
Добавлено через 1 час 50 минут Немного еще попрактиковался и составил показательный код, по которому тоже есть пару вопросов. В методе swap(a, b); я пытаюсь поменять местами 2 экземпляра класса. Как видим сделать это не получилось. Вопрос: есть ли все таки какой то способ например назначить "Employee a" значения из "Employee b" ? В методе HappyA(a, b); я уже меняю местами не экземпляры класса, а конкретно поле зарплата 2-ух экземпляров. И сделать это получается. Т.е. получается менять ссылке на объект нельзя назначать новый объект, а переменной можно? Единственный минус что снижается безопасность т.к. я использую - public double salary; Вопрос: Можно ли как то это реализовать через public double salary; ? Заранее очень благодарен за ответ! Пытаюсь разобраться. Код приведен ниже:
0
|
5 / 5 / 0
Регистрация: 30.10.2013
Сообщений: 180
|
|
30.11.2013, 01:21 [ТС] | 7 |
Ну почему ерундой))) Когда пытаешься разобраться, лучше усваиваешь. Я не люблю оставлять какие то моменты которые не понимаю.... А Хорстман нравится, хорошо пишет для новичков)))
0
|
2 / 2 / 0
Регистрация: 08.11.2013
Сообщений: 24
|
||||||
03.12.2013, 13:40 | 8 | |||||
Тоже новичок и читаю Хорстманна, предположу что в методе swap вы нужно делать клон Employee.
0
|
03.12.2013, 13:40 | |
03.12.2013, 13:40 | |
Помогаю со студенческими работами здесь
8
Поменять местами буквы Поменять значение переменных местами Поменять местами диагонали матрицы Поменять местами буквы в слове Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |