Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.07.2010, 14:32
shurco2 вне форума Посмотреть профиль Отправить личное сообщение для shurco2 Найти все сообщения от shurco2
  № 1  
Ответить с цитированием
shurco2

Регистрация: Aug 2008
Сообщений: 35
Attention Удаление элемента ассоциативного массива

Подскажите пожалуйста, как простым способом можно удалить элемент ассоциативного массива по его значению?

Старый 19.07.2010, 22:23
mayakwd вне форума Посмотреть профиль Отправить личное сообщение для mayakwd Посетить домашнюю страницу mayakwd Найти все сообщения от mayakwd
  № 2  
Ответить с цитированием
mayakwd
 
Аватар для mayakwd

Регистрация: Jul 2008
Адрес: t:2, x: 0.76
Сообщений: 553
Отправить сообщение для mayakwd с помощью ICQ Отправить сообщение для mayakwd с помощью Skype™
Каким образом у вас задан ассоциативный массив? Dictionary?
Код AS3:
public static function removeFromDictByValue (dict : Dictionary, value : Object) : Boolean {
	for (var i : Object in dict) {
		if (dict[i] == value) {
			dict[i] = null;
			delete dict[i];
			return true;
		}
	}
	return false;
}
__________________
Блог, Twitter
Брюзга.

Старый 20.07.2010, 11:00
Tr1te вне форума Посмотреть профиль Отправить личное сообщение для Tr1te Найти все сообщения от Tr1te
  № 3  
Ответить с цитированием
Tr1te
 
Аватар для Tr1te

Регистрация: Jun 2009
Сообщений: 461
А зачем присваивать
Код AS3:
dict[i] = null;
?

Старый 20.07.2010, 14:03
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 4  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
null - пустота. Вы присваеваете пустоту и переменная удаляется.
Только в случае если Dictionary был создан с флагом weakKeys = true и других ссылок на объект нет.
По сути dict[i] = null просто говорит, что dict[i] больше ни на что не ссылается. Сам объект от этого не удаляется.

Учитывая, что в примере mayakwd есть строчка delete dict[i], то необходимости в dict[i] = null никакой нет.
__________________
...вселенская грусть

Старый 20.07.2010, 14:48
Tr1te вне форума Посмотреть профиль Отправить личное сообщение для Tr1te Найти все сообщения от Tr1te
  № 5  
Ответить с цитированием
Tr1te
 
Аватар для Tr1te

Регистрация: Jun 2009
Сообщений: 461
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
Учитывая, что в примере mayakwd есть строчка delete dict[i], то необходимости в dict[i] = null никакой нет.
Вот это я и имел ввиду, я уж думал что перед делитом нужно убивать ссылку.

Старый 20.07.2010, 18:46
mayakwd вне форума Посмотреть профиль Отправить личное сообщение для mayakwd Посетить домашнюю страницу mayakwd Найти все сообщения от mayakwd
  № 6  
Ответить с цитированием
mayakwd
 
Аватар для mayakwd

Регистрация: Jul 2008
Адрес: t:2, x: 0.76
Сообщений: 553
Отправить сообщение для mayakwd с помощью ICQ Отправить сообщение для mayakwd с помощью Skype™
я всегда перестраховываюсь =)
__________________
Блог, Twitter
Брюзга.

Старый 20.07.2010, 20:12
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
Сообщение от mayakwd Посмотреть сообщение
я всегда перестраховываюсь =)
Тогда надо по 2-3 раза присваивать null, а то вдруг не пристроится с первого раза. И удалять тоже раза по два.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.07.2010, 20:21
mayakwd вне форума Посмотреть профиль Отправить личное сообщение для mayakwd Посетить домашнюю страницу mayakwd Найти все сообщения от mayakwd
  № 8  
Ответить с цитированием
mayakwd
 
Аватар для mayakwd

Регистрация: Jul 2008
Адрес: t:2, x: 0.76
Сообщений: 553
Отправить сообщение для mayakwd с помощью ICQ Отправить сообщение для mayakwd с помощью Skype™
Цитата:
Сообщение от iNils Посмотреть сообщение
Тогда надо по 2-3 раза присваивать null, а то вдруг не пристроится с первого раза. И удалять тоже раза по два.
very funny ;]
__________________
Блог, Twitter
Брюзга.

Старый 21.07.2010, 19:26
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
У меня вопрос, каким боком Dictionary к ассоциативному массиву относится?

Старый 21.07.2010, 19:34
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 10  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
Цитата:
Сообщение от etc Посмотреть сообщение
У меня вопрос, каким боком Dictionary к ассоциативному массиву относится?
Нужно сначала всем высказаться кто и как понимает что такое ассоциативный массив и кто чем себе представляет Dictionary.
__________________
trace("Остановите Землю, я сойду!!!");

Создать новую тему Ответ Часовой пояс GMT +4, время: 10:30.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 10:30.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.