2017-09-27 28 views
-1

文字列配列をアンドロイドでダブル配列に変換する必要があります。しかし、私のアプリは私のデバイス上で実行されていません。文字列配列をダブル配列に変換するAndroidプログラミング

String dataa="0.121 0.547 0.875 0.245";          
String delimiter = " "; 

String spectrainstring[] = dataa.split(delimiter); 

int size = spectrainstring.length; 

double[] spectraldata={0.0}; 

for(int i=0;i<size;i++)  
{ 
    spectraldata[i]=Double.parseDouble(spectrainstring[i].toString());  
} 
+0

あなたが投稿したコードを確認し、それはあなたがあなたのローカルマシン上で実行されている正確に何であることを確認してください:それは残念ながらstopped.Followingが私のコードであることを示しています。また、問題が何であり、どのようなコード行が始まっているのかを教えてくれるので、logcatの出力を見せてくれればとてもいいです。 – csmckelvey

+3

一見したところでは、私が推測するのは、配置しようとしているdouble配列の長さは1ですが、このケースでは「size」までループしているためです。 – csmckelvey

+0

また、スキャナを使用しない理由クラス? –

答えて

1
String dataa = "0.121 0.547 0.875 0.245"; 
String delimiter = " "; 

String spectrainstring[] = dataa.split(delimiter); 

int size = spectrainstring.length; 

double[] spectraldata = new double[size]; 

for (int i = 0; i < size; i++) { 
    spectraldata[i] = Double.parseDouble(spectrainstring[i].toString()); 
    System.out.println(spectraldata[i]); 
} 
+0

重要な行の変更はdoubleです[] spectraldata = new double [size]; –

+0

実際には、文字列変数を解析してdoubleにエラーが発生しています。この行をコメントすると、他のコードが実行されます。 –

+0

この行double [] spectraldata = {0.0}; java.lang.ArrayIndexOutOfBoundsExceptionを返します。 4つの二重値があるので、それはあなたのためにどのように機能していますか? –