2017-12-27 16 views
3

의 힘을 보여 않는 키의 배열, 16 분명히 2의 다음 전원 반올림 .왜 줄리아 DIct.keys 줄리아 0.6.2</p> <p>를 사용하여이 개 값

julia> dk.keys 16-element Array{Int64,1}: 0 4 9 25 100 81 0 0 16 36 64 0 49 0 0 1

제가

17 키 (17 개)와 같이 설정
julia> dkk = Dict(k^2 => "*"^k for k = 1:17) 

딕셔너리 {INT64 문자열}와 사전 만들 때

,745,151을

...

julia> dkk.keys 
64-element Array{Int64,1}: 
      0 
      0 
     100 
      0 
     121 
     81 
      0 
      0 
     16 
      0 
      ⋮ 
4536409040 
4536409456 
     36 
     225 
     256 
      0 
      0 
4536409904 
      1 

왜 64 대신 32 일 것 (2) 다음에 전원의?

어느 쪽이든, 나는 단지 해시 테이블이 아닌 키를 원한다.

참고 : 사전에 직접 액세스 할 때 항목 수가 예상 한 것입니다. 10 개 항목이

julia> dk 

DICT {INT64, 문자열} : 17 개 항목이

julia> dkk 

DICT {INT64, 문자열}

: 일부 내부 이유로 2의

+1

base/dict.js는 Dicts가 정의 된 곳입니다. '_tablesz' 및'n = 16'을 참고하십시오. –

+0

.js? 줄리아에 있는거야? – ShpielMeister

+0

.jl. 네, 줄리아에 있어요. –

답변

4

그것의 힘 (나는 것 추측은 나무 나 그런 것을 사용하기 때문입니다. 모르겠습니다). 직접 내부를 잡는 것을 피하십시오. 대신, 이터레이터 keys(dk)을 사용하십시오. 키를 배열로 사용하려면 collect(keys(dk))을 사용하십시오.

+0

확인. 말이된다. 나는 줄리아를 시도했다> collect (dk.keys) 16 요소 배열 {Int64,1} – ShpielMeister