개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.09 11:22

SplDoublyLinkedList::key 관련 질문

목록
  • OAuth전문가 12일 전 2025.03.09 11:22
  • 6
    1
SplDoublyLinkedList::key를 사용하여 노드의 키 값을 설정하고 조회할 수 있습니다. 하지만 SplDoublyLinkedList::key를 사용할 때 key 값이 중복되는 경우 어떻게 처리해야 하는지 궁금합니다.

SplDoublyLinkedList::key를 사용할 때 key 값이 중복되는 경우는 어떻게 처리해야 하나요?

    댓글목록

    profile_image
    나우호스팅  12일 전



    SplDoublyLinkedList::key를 사용할 때 key 값이 중복되는 경우는 SplDoublyLinkedList::key가 제공하는 기능을 사용하여 중복 키를 허용하거나, 중복 키를 허용하지 않도록 설정할 수 있습니다.

    중복 키를 허용하는 경우, SplDoublyLinkedList::key는 중복 키를 자동으로 인식하고, 마지막으로 추가된 키 값을 사용합니다.

    중복 키를 허용하지 않는 경우, SplDoublyLinkedList::key는 중복 키를 허용하지 않으며, 중복 키가 발견되면 예외를 발생시킵니다.

    중복 키를 허용하거나 허용하지 않는 설정은 SplDoublyLinkedList::key의 옵션을 통해 조절할 수 있습니다.

    예를 들어, 중복 키를 허용하는 경우 다음과 같이 설정할 수 있습니다.

    #hostingforum.kr
    php
    
    $splDoublyLinkedList = new SplDoublyLinkedList();
    
    $splDoublyLinkedList->setFlags(SplDoublyLinkedList::ALLOW_INDEX_MODIFICATION);
    
    $splDoublyLinkedList->push('키1');
    
    $splDoublyLinkedList->push('키2');
    
    echo $splDoublyLinkedList->key($splDoublyLinkedList->count() - 1); // 키2
    
    


    예를 들어, 중복 키를 허용하지 않는 경우 다음과 같이 설정할 수 있습니다.

    #hostingforum.kr
    php
    
    $splDoublyLinkedList = new SplDoublyLinkedList();
    
    $splDoublyLinkedList->setFlags(SplDoublyLinkedList::DISALLOW_INDEX_MODIFICATION);
    
    $splDoublyLinkedList->push('키1');
    
    try {
    
        $splDoublyLinkedList->push('키1');
    
    } catch (Exception $e) {
    
        echo '중복 키가 허용되지 않습니다.';
    
    }
    
    

    2025-03-09 11:23

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 5,351건 / 225 페이지

검색

게시물 검색