Associative array/Iteration: Difference between revisions
Content deleted Content added
Added Vala Code |
|||
Line 1,264: | Line 1,264: | ||
{{omit from|Integer BASIC}} |
{{omit from|Integer BASIC}} |
||
{{omit from|TI-89 BASIC}} <!-- No builtin assoc arrays, would not be enlightening to show a defn --> |
{{omit from|TI-89 BASIC}} <!-- No builtin assoc arrays, would not be enlightening to show a defn --> |
||
=={{header|Vala}}== |
|||
{{libheader|Gee}} |
|||
<lang vala> |
|||
using Gee; |
|||
void main(){ |
|||
// declare HashMap |
|||
var map = new HashMap<string, double?>(); |
|||
// set 3 entries |
|||
map["pi"] = 3.14; |
|||
map["e"] = 2.72; |
|||
map["golden"] = 1.62; |
|||
// iterate over (key,value) pair |
|||
foreach (var elem in map.entries){ |
|||
string name = elem.key; |
|||
double num = elem.value; |
|||
stdout.printf("%s,%f\n", name, num); |
|||
} |
|||
// iterate over keys |
|||
foreach (string key in map.keys){ |
|||
stdout.printf("%s\n", key); |
|||
} |
|||
// iterate over values |
|||
foreach (double num in map.values){ |
|||
stdout.printf("%f\n", num); |
|||
} |
|||
} |
|||
</lang> |
|||
Compile with flag: |
|||
<pre> |
|||
--pkg gee-1.0 |
|||
</pre> |
|||
Output: |
|||
<pre> |
|||
e,2.720000 |
|||
golden,1.620000 |
|||
pi,3.140000 |
|||
e |
|||
golden |
|||
pi |
|||
2.720000 |
|||
1.620000 |
|||
3.140000 |
|||
</pre> |