カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

Dictionaryクラス VBA

Dictionaryクラスはハッシュテーブルのように使えるクラスです。
Collectionクラスも同じように使えるのですが、Dictionaryクラスはキーが存在するかどうかをチェックするメソッドがあることがポイントです。

Dim dict As Object

Set dict = CreateObject("Scripting.Dictionary")

キーが存在しないことを確かめてからデータを追加します。

If dict.Exists("いちご") <> True Then
    dict.Add "いちご", "いちご"
End If

ループして全ての値を取り出します。

For Each vntItem In dict.Items
    MsgBox vntItem
Next vntItem

続きを読む…»

3,427 views

連想配列を使用する Android

連想配列を使用するにはHashtableや、HashMapを使用します。
双方ともMapインターフェイスを実装しているjava.utilのクラスです。
他にもありますが、主だったものをご紹介します。

クラス名 特徴
HashMap 順不同
TreeMap キーの昇順
Hashtable キーの降順
LinkedHashMap 追加した順番

ここではHashMapを例にやってみましょう。

まずは宣言

HashMap<String, String> hashmap;

変数の初期化

hashmap = new HashMap<String, String>();

データを追加します。

hashmap.put("key", "value");

キーを指定し、値を取得します。

hashmap.get("key");
4,154 views

PHPでJSON形式のデータを簡単に扱う

PHPにはJSON形式のデータを簡単に扱える関数が用意されています。
PHP5.2.0以降であればコアに含まれるので追加インストールの必要はありません。

例として会員システムで登録ユーザーの最終ログイン日とログイン回数を記録するというプログラムとします。

まずは以下のようなサンプル配列を作成します。

$VALUE["suzuki"]    = array("last_login_date" => "13-10-26", "count" => 1);
$VALUE["hashimoto"] = array("last_login_date" => "13-10-28", "count" => 5);

確認のため、出力してみます。

Array
(
    [suzuki] => Array
        (
            [last_login_date] => 13-10-26
            [count] => 1
        )

    [hashimoto] => Array
        (
            [last_login_date] => 13-10-28
            [count] => 5
        )

)

作成した配列を引数として渡し、JSONデータを作成します。

$json = json_encode($VALUE);

出力してみましょう。

{"suzuki":{"last_login_date":"13-10-26","count":1},"hashimoto":{"last_login_date":"13-10-28","count":5}}

たったこれだけでJSONデータが作成できます。

次はデータに変更を加えてみます。 続きを読む…»

9,150 views

配列をランダムに並べ替える

PHPではshuffle関数を使って、配列の値をランダムに並べ替えることができます。

例として1から15の配列を作成し、配列の要素数だけ繰り返しランダムに並べ替えたものを表示しています。

<?php

$num_list = range(1, 15);

$n = count($num_list);

for($i = 0; $i < $n; $i++) {
    shuffle($num_list);
    echo @implode(", ", $num_list)."<br>";
}

?>

実行した結果がこちら
random_array

1,066 views

連想配列を使用する

C#で連想配列を使用するにはHashtableを使います。

using System.Collections;

Hashtable table = new Hashtable();

table.Add("even", "偶数");
table.Add("odd", "奇数");

Console.WriteLine(table["even"]);
Console.WriteLine(table["odd"]);
1,809 views