データ型のコンバートについて †
- 処理ツールが setData***() メソッドによって,可視化ツールにデータを送信する際に,送信したデータ型のデータを可視化ツールが受け取れない場合,「データ型コンバート表」と「変換テーブル」に定めた優先順位に従ってデータ型を変換(コンバート)し,データを再送信します.
優先順位に従ったコンバートの例)
- 処理ツール(int 型) --送信--> 可視化ツール(String 型)(受け取り不可)
- 処理ツール(int 型--コンバート-->double型) --送信--> 可視化ツール(String 型)(受け取り不可)
- 処理ツール(int 型--コンバート-->boolean型) --送信--> 可視化ツール(String 型)(受け取り不可)
- 処理ツール(int 型--コンバート-->String型) --送信--> 可視化ツール(String 型)(受け取り)
- 可視化ツール側で受け取りが可能なデータ型のデータであっても,可視化ツール側で指定するデータ数を超えて送られたデータもコンバートされます.
- setData***() メソッドの第一引数として,dataID を指定した場合,データ型のコンバートは行われません.
- 意図的にデータ型のコンバートを避け,可視化ツールが必要とするデータの一部のみを送信したい場合には,dataIDを用いた setData***() メソッドを利用してください.
データ型コンバート表 †
送信されたデータは、優先順位の順序に従って変換されます。
| 優先順位 | | | | | | | | | | |
送信データ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
boolean | boolean | int | double | String | boolean[] | int[] | double[] | String[] | boolean[][] | int[][] | double[][] |
int | int | double | boolean | String | int[] | double[] | boolean[] | String[] | int[][] | double[][] | boolean[][] |
double | double | int | boolean | String | double[] | int[] | boolean[] | String[] | double[][] | int[][] | boolean[][] |
String | String | int | double | boolean | String[] | int[] | double[] | boolean[] | int[][] | double[][] | boolean[][] |
boolean[] | boolean[] | int[] | double[] | String[] | boolean[][] | int[][] | double[][] | String | boolean | int | double |
int[] | int[] | double[] | boolean[] | String[] | int[][] | double[][] | boolean[][] | String | int | double | boolean |
double[] | double[] | int[] | boolean[] | String[] | double[][] | int[][] | boolean[][] | String | double | int | boolean |
String[] | String[] | String | int[] | double[] | boolean[] | int[][] | double[][] | boolean[][] | int | double | boolean |
boolean[][] | boolean[][] | int[][] | double[][] | String[] | boolean[] | int[] | double[] | String | boolean | int | double |
int[][] | int[][] | double[][] | boolean[][] | String[] | int[] | double[] | boolean[] | String | int | double | boolean |
double[][] | double[][] | int[][] | boolean[][] | String[] | double[] | int[] | boolean[] | String | double | int | boolean |
変換の方法 †
変換テーブル †
変換前/変換後 | boolean | int | double | String |
boolean | - | 0か1に変換 | 0.0か1.0に変換 | 文字列に変換 |
int | 0以外true | - | (double)でキャスト | 文字列に変換 |
double | 0以外true | (int)でキャスト | - | 文字列に変換 |
String | ""以外true | 文字数 | 文字数 | - |
変換の方法 †
変換テーブル+ | |
変換テーブル+ | 第一引数(添字)の要素数を1にする |
変換テーブル+ | 第一引数(添字)と第二引数(添字)の要素数を1にする |
変換テーブル+ | ,区切りで結合 |
変換テーブル+ | ,区切りと改行で結合 |
変換テーブル+ | 二次元データを一次元に落とす([i][j] -> [k]) |
変換テーブル+ | 先頭の要素([0]または[0][0])を取り出す |