질문과 답변

Extra Form


a = []

 

a = [ @b=1,@c=1,@d=1,@e=1,@f=1]


이 함수를
 

a = [c=1,@d=1,@e=1,@f=1]

 

이 이렇게 바로 바꿀 수 있는 명령어가 있나요?



Who's Lighna

profile

스트레스 받는다.

Comment '2'
  • profile
    습작 2012.05.24 15:49
    배열에서 단순히 맨 첫번째 원소를 제거하는 것이라면 .shift 를 사용하면 됩니다.

    a.shift 

    하면 첫번째 원소값이 배열에서 제거될 테니 원하시는 모습이 나올 겁니다.


    a[0] = nil # 0번 인덱스에 nil 값을 대입

    a.compact! # 배열에서 nil값을 제거

    물론 이래도 되겠고,

    a.delete_at(0) # 0번 인덱스에서 원소를 제거


    이래도 되겠지요.

     


    하지만 원하신 것이 배열에서 첫번째 원소를 지우는 것이 아니라 @b값을 찾아서 지우는 것이면 조금 다릅니다.

    배열에서 특정 값을 찾아 지우는 것은 .delete() 이긴 합니다만, 이거 쓰면 같은 값이 다 날아가기 때문입니다.
    이 경우는 배열을 해시 처럼 쓸경우 생기는 문제입니다.
    배열에는 키값이 존재하지 않기 때문이지요.

    a = [ @b=1,@c=1,@d=1,@e=1,@f=1]

    라는 리스트는 

    a = [@b,@c,@d,@e,@f]

    가 아니라

    a = [1,1,1,1,1]

    이 되니까,

    a .delete(@b)

    해버리면

    a  == []

    이렇게 되어버릴 겁니다.

    반면, 해시를 사용하면 이런식이 되지요.

    a = { 'b' => 1, 'c'  =>  1, 'd'  =>  1, 'e'  =>  1, 'f'  =>  1}
    a .delete('b')

    a == { 'c'  =>  1, 'd'  =>  1, 'e'  =>  1, 'f'  =>  1} 


    지금 구현하시는 기능이 배열을 필요하시는 건지 해시를 필요 하시는 건지 잘 생각하시고 사용하시면 될 것 같습니다.^^


  • profile
    Lighna 2012.05.24 18:23
    궁금증이 한번에 해결됬네요, 감사합니다~~

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12393
RMXP 이벤트의 삭제에 대해서... 4 file 싱글스컬 2011.11.26 1797
RMVXA 타이틀메뉴 스크립트 질문 4 file 몽롱 2012.07.22 1797
RMXP 게임 만드는 설명 1 gnsalswjddma119 2011.11.22 1798
RMVXA RPGVX ACE \N[n] 이거 질문드릴게요.. 18 네루츠나 2013.04.13 1798
RMXP 이번에는 스크립트 오류가 뜹니다. 9 흑온의팬 2012.10.01 1799
RMVXA 지원되지 않는 조작을 하려고 했습니다. 2 file Farbel 2014.03.01 1801
RMXP BGM이 안나오네요;; 2 구운닭 2011.11.24 1801
RMXP RMXP 배열 함수 관련 질문 2 Lighna 2012.05.24 1801
RMVX rmvx나 vxace 캐릭터는 다 땅딸막한데 더 크게 할 수 있나요? 7 아이어리이 2013.09.10 1801
RMVX 마을 사람한테 말걸기 2 mio 2012.06.10 1802
RM2k RPG 2000 게임에서 폰트 질문 좀 드릴게요 file 글쓰니안쓰니 2013.12.07 1802
RMVX 타일의 방향을 바꾸는 방법 4 file 약한사자군 2013.05.11 1802
RMXP 타일이 숲속타일 하나뿐이네요 . 기본타일 1 료우 2011.08.28 1803
기타 온라인rpg게임 어떻게 만듬? 2 Cail Arial 2010.10.13 1804
RMVX 정답을 맞췄을 때랑 못 맞췄을때 구분하는 방법좀!! 5 file 생수 2011.12.30 1804
RMXP 메뉴에서 스킬,장비등을 삭제했는데 오류가 났습니다. 1 file Eearang 2011.11.20 1805
RMXP XP데미지 계산식 1 unuseid 2011.12.18 1807
RMXP 턴방식에서 댐지2배,4배,0.5배하는것좀 알려주세요. 2 B.Z 2011.07.25 1808
RMXP 전투 불능 2 뿌붕 2011.08.19 1808
RMXP 기본아이템 1 캉쿤 2011.08.13 1809
Board Pagination Prev 1 ... 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 ... 516 Next
/ 516