デブのDEV日記

港区で働くデブによるDEV(DEVELOPE)やデブ飯の記録。そんな美味いならデブになっても構わない。

Mapの前方一致検索

今やっているシステムでCSVファイルでデータ連携される住所で1行で来る物がある。
システム上は、都道府県・住所1・住所2・住所3のように分割してカラムを保持しているので
1行で来る住所から都道府県を取り出して、システムのコード値に変換してやんないといけない。

Map<都道府県名, 都道府県コード>のようなMapオブジェクトをシステムで保持する事にして
ここから住所の先頭3文字を切り出して、都道府県コードを取得する処理を作成。

「神奈川県」のように4文字来る物もあるが、とりあえず3文字を切り出してMapから前方一致検索して取得する事にした。

	protected String getAreaNameByMap(Map<String, String> areaCodeMap, String areaPrefix) {
		for (String key : areaCodeMap.keySet()) {
			// キーを取得
			if (key != null) {
				if (key.startsWith(areaPrefix)) {
					return key;
				}
			}
		}
		return "";
	}

これで、Mapから前方一致した都道府県が返る。

JavaScriptにおけるコロン

JavaScriptのコードを見ているとよく意味が分からないコードが出てきたりします。

今回は、コードを見てたら以下のようなコロンのコードがあった。

io.sockets.emit("publish", {value: msg});


連想配列だと

var aaa = new Array('春', '夏', '秋', '冬')

こういう書き方しか知らなったけど、{value: msg}で生成出来るらしい。

まだまだ勉強不足です(;´Д`)

その他コロンは、三項演算子とラベルで使ったりするけど

JAVA勉強した時は、三項演算子は使うなと昔教えられました。

理由は、知らない人が多いから、、だって。

何かその辺の理由付けは感覚とかノリだよなぁ。

統計取ってる訳でもないし。

結構、開発現場の規約系は作った人の好みによるところも多くなりがち。

まぁ規約があるだけましですね。