
SplDoublyLinkedList::setIteratorMode 메소드는 이터레이터의 동작을 변경하는 메소드입니다. 이 메소드는 이터레이터의 순회 방식을 변경할 수 있습니다.
이 메소드는 세 가지 모드를 지원합니다.
1. SplDoublyLinkedList::IT_MODE_DELETE: 이터레이터가 노드를 삭제할 수 있습니다.
2. SplDoublyLinkedList::IT_MODE_KEEP_CURRENT_KEY: 이터레이터가 현재 키를 유지할 수 있습니다.
3. SplDoublyLinkedList::IT_MODE_KEEP_CURRENT_VALUE: 이터레이터가 현재 값을 유지할 수 있습니다.
예를 들어, SplDoublyLinkedList 객체를 생성하고 이터레이터를 설정한 후, SplDoublyLinkedList::setIteratorMode 메소드를 호출하여 IT_MODE_DELETE 모드를 설정할 수 있습니다.
#hostingforum.kr
php
$list = new SplDoublyLinkedList();
$list->push('A');
$list->push('B');
$list->push('C');
$list->setIteratorMode(SplDoublyLinkedList::IT_MODE_DELETE);
foreach ($list as $key => $value) {
echo "Key: $key, Value: $valuen";
$list->offsetUnset($key);
}
이 예제에서는 SplDoublyLinkedList::setIteratorMode 메소드를 호출하여 IT_MODE_DELETE 모드를 설정한 후, 이터레이터를 사용하여 노드를 삭제합니다.
2025-05-15 06:28