Hash from two arrays: Difference between revisions
Content added Content deleted
MaiconSoft (talk | contribs) No edit summary |
|||
Line 478: | Line 478: | ||
set-to h item pop-from h_values |
set-to h item pop-from h_values |
||
</lang> |
</lang> |
||
=={{header|Delphi}}== |
|||
{{libheader| System.SysUtils}} |
|||
{{libheader| System.Generics.Collections}} |
|||
<lang Delphi> |
|||
program Hash_from_two_arrays; |
|||
{$APPTYPE CONSOLE} |
|||
uses |
|||
System.SysUtils, |
|||
System.Generics.Collections; |
|||
type |
|||
THash = TDictionary<string, Integer>; |
|||
THashHelper = class helper for THash |
|||
procedure AddItems(keys: TArray<string>; values: TArray<Integer>); |
|||
end; |
|||
{ THashHelper } |
|||
procedure THashHelper.AddItems(keys: TArray<string>; values: TArray<Integer>); |
|||
var |
|||
i: Integer; |
|||
begin |
|||
Assert(length(keys) = Length(values), 'Keys and values, must have the same size.'); |
|||
for i := 0 to High(keys) do |
|||
AddOrSetValue(keys[i], values[i]); |
|||
end; |
|||
var |
|||
hash: TDictionary<string, Integer>; |
|||
i: integer; |
|||
key: string; |
|||
begin |
|||
hash := TDictionary<string, Integer>.Create(); |
|||
hash.AddItems(['a', 'b', 'c'], [1, 2, 3]); |
|||
for key in hash.Keys do |
|||
Writeln(key, ' ', hash[key]); |
|||
hash.Free; |
|||
readln; |
|||
end. |
|||
</lang> |
|||
{{out}} |
|||
<pre> |
|||
b 2 |
|||
a 1 |
|||
c 3 |
|||
</pre> |
|||
=={{header|E}}== |
=={{header|E}}== |
||