What should the first parameter be when collecting keys from a dictionary?

The first parameter is the element type of the resulting container, but if you omit it Julia will use the default element type of the iterator:

julia> character_inventory = Dict{String,Int32}("Sword" => 100, "Staff" => 50)
Dict{String,Int32} with 2 entries:
  "Sword" => 100
  "Staff" => 50

julia> collect(character_inventory)
2-element Array{Pair{String,Int32},1}:
 "Sword" => 100
 "Staff" => 50

but you could collect to e.g. Pair{String,Int64} if you want:

julia> collect(Pair{String,Int64}, character_inventory)
2-element Array{Pair{String,Int64},1}:
 "Sword" => 100
 "Staff" => 50
2 Likes