Associative array/Iteration: Difference between revisions

Added Vala Code
(Added Vala Code)
Line 1,264:
{{omit from|Integer BASIC}}
{{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>