0

から値を取得するアクティビティがあり、ResultSet次のように配列に保存します。

flat[i] = rs.getDouble(3);
flng[i] = rs.getDouble(4);
i++;
Intent i = new Intent(MapID.this, map.class);
Bundle bundle=new Bundle();
bundle.putDoubleArray("Lat", flat);
bundle.putDoubleArray("Long", flng);
i.putExtras(bundle);
startActivity(i);

他のクラスでは、次の方法で値を取得します。

Bundle bundle = getIntent().getExtras();
flat = bundle.getDoubleArray("Lat");

値を次のような文字列に変換したい:

String xx = new Double(flat).toString();
4

3 に答える 3

1

Java では、プリミティブに対して + 演算子が定義されています。あなたは単に次のようなことをすることができますString xx = "" + myDouble;

次のような String メソッドを使用することをお勧めしますが、String xx = String.valueOf(myDouble);

于 2014-04-01T11:03:02.447 に答える
0

配列の各要素でString.valueOfを使用し、次のStringように別の配列に格納します。

double[] flat = bundle.getDoubleArray("Lat");
String[] flatAsStrings = new String[flat.length];

for (int i = 0; i < flat.length; i++) {
    flatAsStrings[i] = String.valueOf(flat[i]);
}

これらのfloat値を文字列に変換せずに単純に出力するには、次のようにします。

double[] flat = bundle.getDoubleArray("Lat");
System.out.println(Arrays.toString(flat));

次のように出力されます (入力によって異なります):

[1.0, 2.0, 3.0, 4.0, 5.0]
于 2014-04-01T11:04:45.343 に答える