0

私のコードでは、空白で区切られた 3 つの異なる値を入力するようユーザーに求めています。次に、それらの 3 つの異なる値を 3 つの異なるDouble変数に割り当てたいと思います。

そのような文字列の最初の文字を double 変数に代入しようとしましたが、うまくいきませんでした。

助言がありますか?

ありがとうございました!

これが私がやろうとしていることです:

int decision = message();
String newDimensions;
double newHeight, newWidth, newLength;

if(decision == 1){
  newDimensions = JOptionPane.showInputDialog("Please enter the desired amount to be added" + 
                                            "\nto each dimension." +
"\nNOTE: First value is for Height, second for Width, third for Length" +
"\nAlso, input information has to have a blank space between each value." +
"\nEXAMPLE: 4 8 9");

newHeight = Double.parseDouble(newDimensions.charAt(0));
4

5 に答える 5

2
  1. ユーザーから入力を受け取ります。

  2. 区切りスペース、つまり " " を使用してその行を分割します。

  3. for ループ内で、各インデックス要素を double に変更します。Double.parseDouble(splitted[i]); を使用して

于 2013-04-12T14:16:02.273 に答える
1

最初にString.splitを使用して入力を分割し、次に Double.parseDouble Double.parseDoubleを使用して各変数を解析して、それらを Double 変数に読み込むことができます。

String[] params = newDimensions.split(" ");
newHeight = Double.parseDouble(params[0]);
newWidth = Double.parseDouble(params[1]);
于 2013-04-12T14:15:07.067 に答える
0

次のようなことを試してください:

newDimensions = JOptionPane.showInputDialog(...

newDimensions = newDimensions.trim();

String arr[] = newDimensions.split(" ");

double darr[] = new double[arr.length];

for(int i=0;i<arr.length;i++) darr[i] = Double.parseDouble(arr[i].trim());

守備面での課題はまだまだあります。parse double をトリムすることは重要です。

于 2013-04-12T14:17:59.950 に答える