
SplDoublyLinkedList::offsetGet 메소드는 인덱스에 해당하는 값을 반환합니다.
인덱스가 객체의 크기보다 큰 경우 또는 음수인 경우에는 SplDoublyLinkedListIndexOutOfBoundsException 예외를 발생시킵니다.
인덱스에 대한 유효성 검사를 수행해야 합니다.
인덱스에 대한 유효성 검사를 수행하는 방법은 다음과 같습니다.
- 인덱스가 음수인지 확인합니다.
- 인덱스가 객체의 크기보다 큰지 확인합니다.
인덱스에 대한 유효성 검사를 수행한 후에 offsetGet 메소드를 호출하면 예외를 발생시키지 않고 인덱스에 해당하는 값을 반환할 수 있습니다.
인덱스에 대한 유효성 검사를 수행하는 예제는 다음과 같습니다.
php
$linked_list = new SplDoublyLinkedList();
$linked_list->push('A');
$linked_list->push('B');
$linked_list->push('C');
// 인덱스가 0인 경우 'A'를 반환합니다.
echo $linked_list->offsetGet(0) . "n"; // A
// 인덱스가 2인 경우 'C'를 반환합니다.
echo $linked_list->offsetGet(2) . "n"; // C
// 인덱스가 3인 경우 SplDoublyLinkedListIndexOutOfBoundsException 예외를 발생시키지 않습니다.
if (0 <= 3 && 3 < $linked_list->count()) {
echo $linked_list->offsetGet(3) . "n";
} else {
echo '인덱스 범위 초과입니다.' . "n";
}
// 인덱스가 음수인 경우 SplDoublyLinkedListIndexOutOfBoundsException 예외를 발생시키지 않습니다.
if (0 <= -1 && -1 < $linked_list->count()) {
echo $linked_list->offsetGet(-1) . "n";
} else {
echo '인덱스 범위 초과입니다.' . "n";
}
인덱스에 대한 유효성 검사를 수행한 후에 offsetGet 메소드를 호출하면 예외를 발생시키지 않고 인덱스에 해당하는 값을 반환할 수 있습니다.
2025-07-31 15:42