¤¤¤í¤ó¤Ê¸À¸ì¤ÇÏ¢ÁÛÇÛÎó¤òÎóµó
ʸ»úÎóÁàºî¤ÎÈæ³Óɽ: Ruby, Python, JavaScript, Perl, C++¤¬ÌÌÇò¤«¤Ã¤¿¤Î¤Ç¥Þ¥Í¤·¤Æ¤ï¤«¤ëÈϰϤǤ¤¤í¤¤¤í¤ä¤Ã¤Æ¤ß¤¿¡¥
Ìܼ¡
Ruby
¥³¡¼¥É
hash = {
"key1" => "value1",
"key2" => "value2",
"key3" => "value3"
}
hash.each() {|value, key|
print value + " : " + key + "\n"
}
¼Â¹Ô·ë²Ì
key1 : value1 key2 : value2 key3 : value3
Ruby¤Ï¤¹¤Ù¤Æ¤¬¥ª¥Ö¥¸¥§¥¯¥È¤Ê¤Î¤Ç¡¤ÇÛÎó¤âArray¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤È¤¤¤¦¤³¤È¤Ë¤Ê¤Ã¤Æ¤ë¡¥¤Ç¡¤each¥á¥½¥Ã¥É¤Ë¥³¡¼¥É¥Ö¥í¥Ã¥¯¤ò°ú¿ô¤È¤·¤ÆÍ¿¤¨¤ë¤³¤È¤Ç¥¤¥Æ¥ì¡¼¥È¤Ç¤¤ë¡¥³Ú¤·¤¤¡¥
PHP
¥³¡¼¥É
<?php
$hash = array(
"key1" => "value1",
"key2" => "value2",
"key3" => "value3"
);
// ÉáÄÌ
foreach($hash as $key => $value) {
print $key . " : " . $value . "\n";
}
// ÊÑ
array_walk($hash, create_function('$value, $key', '
print $key . " : " . $value . "\n";
'));
?>
¼Â¹Ô·ë²Ì
key1 : value1 key2 : value2 key3 : value3
ÉáÄ̤Ïforeach¤Ç²ó¤¹¤±¤É¡¤array_walk¤Èƿ̾´Ø¿ô¤òºî¤ëcreate_function¤Ç½ñ¤¯¤³¤È¤â¤Ç¤¤ë¡¥
JavaScript
¥³¡¼¥É
var hash = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
};
// ÉáÄÌ
for(var key in hash) {
document.write(key + " : " + hash[key] + "\n");
}
// ÊÑ
Object.prototype.each = function(iterator) {
for(var key in this) {
if(this.hasOwnProperty(key)) iterator(this[key], key);
}
};
hash.each(function(value, key) {
document.write(key + " : " + value + "\n");
});
¼Â¹Ô·ë²Ì
key1 : value1 key2 : value2 key3 : value3
for in¹½Ê¸¤ò»È¤¦¤Î¤¬¤ï¤«¤ê¤ä¤¹¤¤¡¥JavaScript¤ÏÁ´¤Æ¤¬¥ª¥Ö¥¸¥§¥¯¥È¤ÇÏ¢ÁÛÇÛÎó¤ÏObject¥ª¥Ö¥¸¥§¥¯¥È¡Ê¤Ê¤ó¤«ÊѡˤʤΤÇprototype¤Ë¥á¥½¥Ã¥É¤ò¤¯¤Ã¤Ä¤±¤ì¤Ð¤É¤¦¤È¤Ç¤â½ñ¤±¤ë¡¥
Python
¥³¡¼¥É
hash = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
for key, value in hash.iteritems():
print key + " : " + value
¼Â¹Ô·ë²Ì
key3 : value3 key2 : value2 key1 : value1
¤Ï¤¸¤á¤ÆPython½ñ¤¤¤Æ¤ß¤¿¡¥ÇÛÎ󥪥֥¸¥§¥¯¥È¤¬¥¤¥Æ¥ì¡¼¥¿¤òÊÖ¤·¤Æ¤¯¤ì¤ë´¶¤¸¡©
C++
¥³¡¼¥É
#include <iostream>
#include <map>
using namespace std;
void iteratorFunction(const pair<char *, char *> &value) {
cout << value.first << " : " << value.second << endl;
}
int main() {
map<char *, char *> array;
array.insert(pair<char *, char *>("key1", "value1"));
array.insert(pair<char *, char *>("key2", "value2"));
array.insert(pair<char *, char *>("key3", "value3"));
for_each(array.begin(), array.end(), iteratorFunction);
return 0;
}
¼Â¹Ô·ë²Ì
key1 : value1 key2 : value2 key3 : value3
C++¤Ï¤è¤¯»È¤¦¤±¤É¡¤¤Ï¤¸¤á¤Æstd::map¤È¤«for_each¤È¤«»È¤Ã¤¿¡¥¥Æ¥ó¥×¥ì¡¼¥È»È¤¦¤È¤É¤¦¤·¤Æ¤â¸«¤¿Ìܤ¬¥´¥Á¥ã¥´¥Á¥ã¤Ë¤Ê¤ë¤±¤É¥Æ¥ó¥×¥ì¡¼¥È¤ÏÌÌÇò¤¤¤Î¤Ç»È¤¤¤³¤Ê¤·¤Æ¤ß¤¿¤¤¡¥
Java
¥³¡¼¥É
import java.util.Hashtable;
import java.util.Enumeration;
public class Hash {
public static void main(String args[]) {
Hashtable hash = new Hashtable();
hash.put("key1", "value1");
hash.put("key2", "value2");
hash.put("key3", "value3");
Enumeration e = hash.keys();
while(e.hasMoreElements()) {
String key = (String)e.nextElement();
System.out.println(key + " : " + hash.get(key));
}
}
}
¼Â¹Ô·ë²Ì
key3 : value3 key2 : value2 key1 : value1
µ×¤·¤Ö¤ê¤ËJava¤Î¥³¡¼¥É¤ò½ñ¤¤¤¿¡¥¤È¤¤¤Ã¤Æ¤âÁ´Á³·Ð¸³¤Ê¤¤¤Î¤Ç¡¤¤Ï¤¸¤á¤Æjava.util.Hashtable»È¤Ã¤¿¤è¤¦¤Ê´¶¤¸¡¥
Objective-C + Cocoa
¥³¡¼¥É
#import <Foundation/Foundation.h>
#import <stdio.h>
int main() {
id pool = [[NSAutoreleasePool alloc] init];
id keys[] = {
@"key1",
@"key2",
@"key3"
};
id values[] = {
@"value1",
@"value2",
@"value3"
};
id hash = [[NSDictionary alloc] initWithObjects:values forKeys:keys count:3];
id key;
NSEnumerator *enumerator = [hash keyEnumerator];
while((key = [enumerator nextObject]) != nil) {
printf("%s : %s\n", [key cString], [[hash objectForKey:key] cString]);
}
[hash release];
[pool release];
return 0;
}
¼Â¹Ô·ë²Ì
key2 : value2 key3 : value3 key1 : value1
Objective-C¤ÏÊÙ¶¯Ãæ¤Ç¡¤¤Ï¤¸¤á¤ÆNSDictionary»È¤Ã¤¿¡¥¤Ê¤ó¤È¤Ê¤¯Java¤È»÷¤Æ¤ë¤Î¤ÏJava¤¬Objective-C¤Î±Æ¶Á¤ò¼õ¤±¤Æ¤¤¤ë¤«¤é¤È¤¦¤¤¤³¤È¤Ç¤¤¤¤¤Î¤«¤Ê¡©¡¥
¤Þ¤È¤á
¸Ä¿ÍŪ¤Ë¤ÏRuby¤¬°ìÈÖÈþ¤·¤¤¤È¤¤¤¦¤«¡¤¤ä¤ê¤¿¤¤¤³¤È¤¬Ä¾´¶Åª¤Ë¤ï¤«¤ë¥³¡¼¥É¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤È»×¤¦¡¥¥¹¥¯¥ê¥×¥È·Ï¤ËÈæ¤Ù¤Æ¥³¥ó¥Ñ¥¤¥ë·Ï¤¬¤É¤¦¤·¤Æ¤â¥³¡¼¥É¤¬Ä¹¤¯¤Ê¤ë¤Î¤Ï»ÅÊý¤Ê¤¤¤Ë¤·¤Æ¤âJava¤¬¤¹¤Ã¤¤ê¤·¤Æ¤¤¤ÆÎɤ¤¤È»×¤Ã¤¿¡¥Objective-C¤âMac OS X 10.5¤Ç¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥¿¤¬ºÎÍѤµ¤ì¤ë¤é¤·¤¤¤Î¤Ç¤½¤·¤¿¤éNSAutoreleasePool¤È¤«release¤È¤«¤¬¤Ê¤¯¤Ê¤ë¤Î¤Ç¥·¥ó¥×¥ë¤Ë¤Ê¤ë¤È»×¤¦¡¥
2006/10/26 09:40 | Programming | ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯(0) | ¥³¥á¥ó¥È(0)
¥Æ¥¥¹¥È¥¨¥Ç¥£¥¿
C¡¤C++¡¤Java¡¤HTML¡¤CSS¡¤TeX¤Ê¤É¤ò½ñ¤¯¤È¤¤Ï¥Æ¥¥¹¥È¥¨¥Ç¥£¥¿¤ò»È¤¦¤ï¤±¤Ç¤¹¤¬¡¤ºÇ¶á¤É¤ì¤ò»È¤¦¤«¤Ç̤äƤޤ¹¡¥
µá¤á¤ëµ¡Ç½¤È¤·¤Æ¤Ï¡¤¾å¤Çµó¤²¤¿¸À¸ì¤ÎͽÌó¸ì¤Î¿§Ê¬¤±¤ÈÆþÎÏÊä´°¡¤´Ø¿ô¤Ø¤Î¥¸¥ã¥ó¥×µ¡Ç½¡¤¥¤¥ó¥Ç¥ó¥È¤Î¼«Æ°À°·Á¤Ê¤É¤¬¤¢¤ë¤ó¤ä¤±¤É¡¤¤Ê¤«¤Ê¤«¤¤¤¤¤Î¤¬¤Ê¤¤¤Ç¤¹¡¥ÆÃ¤Ë¥¤¥ó¥Ç¥ó¥È¤Î¼«Æ°À°·Á¤Ï¼ÂÁõ¤·¤Æ¤ë¥¨¥Ç¥£¥¿¤¬¤Û¤È¤ó¤É¤Ê¤¤¤ß¤¿¤¤¤Ç¤¹¡¥
Îɤµ¤½¤¦¤Ê¸õÊä¤È¤·¤Æ¤Ï¡¤Emacs¤¬¤¢¤ë¤Î¤Ç¤¹¤¬¼«Ê¬¤¬»È¤¦¤Ë¤Ï¿µ¡Ç½²á¤®¤Æ»È¤¤¤¿¤¤µ¡Ç½¤¬Ãµ¤»¤Ê¤¯¤Æ»È¤¤¤³¤Ê¤»¤Ê¤¤¡¤¤È¤æ¡¼¾ð¤±¤Ê¤¤»ö¾ð¤¬¤¢¤Ã¤Æº¤¤Ã¤Æ¤Þ¤¹¡¥¤¢¤È¡¤¥¤¥ó¥Ç¥ó¥È¤Î¼«Æ°À°·Á¤µ¤¨Ìµ»ë¤¹¤ì¤Ð¡¤Mac¤Ç¤ÏSmultron¡¤SubEthaEdit¡¤Windows¤Ç¤ÏTerapad¤Ê¤É¤ÎÎɤµ¤½¤¦¤Ê¥¨¥Ç¥£¥¿¤¬¤¢¤ë¤ß¤¿¤¤¤Ç¤¹¡¥Ã¯¤«Îɤ¤¥¨¥Ç¥£¥¿ÃΤé¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡©¤³¤ÎºÝ´èÄ¥¤Ã¤ÆEmacs¤Î»È¤¤Êý³Ð¤¨¤ë¤«¤Ê¡¼¡¥¤â¤·¤¯¤Ï¼«Ê¬¤Çºî¤ë!?
2007/5/10Äɵ
ºÇ¶á¤ÏWindows¤Ç¤âMac¤Ç¤â¤â¤Ã¤Ñ¤éVim»È¤Ã¤Æ¤Þ¤¹¡¥´·¤ì¤ë¤Þ¤Ç¤¬ÂçÊѤǤ¹¤¬¡¤´·¤ì¤ë¤È¤³¤Î¾å¤Ê¤¯¶¯ÎϤǤ¹¡¥¤Þ¤À¤Þ¤À¡¤¥×¥é¥°¥¤¥ó¤ä¤éVim¥¹¥¯¥ê¥×¥È¤ä¤é»È¤¤¤³¤Ê¤·¤Æ¤Ê¤¤¤Ç¤¹¤¬¡¤´ðËܵ¡Ç½¤À¤±¤Ç¤â½½Ê¬²ÁÃͤ¬¤¢¤ë¤È»×¤¤¤Þ¤¹¡¥¤¢¤È¡¤Mac¤Ê¤éCotEditor¡¤Windows¤Ê¤éEmEditor¤ò¥µ¥Ö¤È¤·¤Æ»È¤Ã¤Æ¤Þ¤¹¡¥
2005/04/28 22:19 | Programming | ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯(0) | ¥³¥á¥ó¥È(0)