数万件の配列要素に対するforeachについて
数万件のキー無し要素を持ったディクショナリに対して「制御文/foreach(繰り返し開始)」で繰り返し処理を行うと1週の処理時間が異様に長くなります。
これを解決するために「制御文/For(繰り返し開始)」のstep数をインデックスとして
キー無しディクショナリ要素にアクセスしたいのですが、どのようにしたらよいでしょうか?
---------------------
配列をキーなしで作成したディクショナリ
配列["test1","test2","test3"...."test10000"]
-
佐藤様
ご質問いただきありがとうございます。
["test1","test2","test3"...."test10000"]のようなキー無しのディクショナリーで、インデックスを指定して要素を取得する方法はございません。
キー無しのディクショナリーをお使い頂く場合は、「制御文/foreach(繰り返し開始)」をお使いくださいますようお願い致します。ご質問頂いた["test1","test2","test3"...."test10000"]のようなキー無しのディクショナリーは、
「ディクショナリ-/JSON読込」などを用いて、テキストデータから作成する想定でしょうか。上記の想定が正しい場合、「ディクショナリ-/JSON読込」ではなく「ディクショナリー/文字列分割」を使い『","』で文字列を分割することで、キー有りのディクショナリーを作成する事ができます。
処理の実装イメージは以下となります。
例えば上記の処理で文字列『["test1","test2","test3"]』を処理すると、
『{ "0": "test1", "1": "test2", "2": "test3",…}』のような形のディクショナリーが作成されます。
このような形式であれば「制御文/For(繰り返し開始)」のstep数をインデックスとして要素にアクセスすることが可能となります。 -
回答ありがとうございます。
ご想定の通り文字列からの変換で「ディクショナリ-/JSON読込」を用いて
テキストデータからの変換をしています。キー無しディクショナリであると、かなり無理矢理な実装になってしまいそうですね。
キー無しのディクショナリについては、ここで紹介されており使用しておりましたが、
使い勝手はあまり良くなさそうですね・・・ -
佐藤様
ご返信いただきありがとうございます。
Unifinityはモバイルアプリの特にフロントエンドの開発に特化したツールのため、
大量のデータを一度に処理するようなプログラムを実装するための機能に不足のある部分がございます。ご不便をおかけしますが、ご理解・ご容赦頂けますと幸いです。
また、「ディクショナリー」は一般的な「連想配列」と「配列」2つの特徴を併せ持つデータ型となりますが、「ノーコードで誰でも作れる」弊社製品では、プログラミング未経験の方に「ディクショナリー」をご理解・ご利用頂きやすいよう、「連想配列」としての特徴を中心に処理部品やコンテンツの提供を行っております。
他方、配列内要素へのインデックス指定によるアクセスなど、プログラミング経験者の方が慣れ親しんだ方法を用いれるなど、「経験者も使いやすい」ことと「ノーコードで簡単」を両立することが製品の課題と捉えております。
佐藤様より頂いた「キーなしのディクショナリへのインデックスによるアクセス」に付きましては、
製品開発チームにもご要望としてフィードバック致します。
引き続きどうぞ宜しくお願いいたします。
サインインしてコメントを残してください。
コメント
3件のコメント