文字列の配列に有効な数値が含まれていることを確認するプログラムを作成します。文字列に「。」が含まれている場合はDoubleに変換し、そうでない場合は整数に変換します。入力は文字列の配列{"10.20"、 "123456"、 "12 。無効"}。
私の問題は、123456がdoubleに変更されていることです。intに変更する必要があります。助けてください:(
public class Ch7LU3Ex1
{
public static void main(String[] args)
{
String[] str = new String []{"10.20","123456","12.invalid"};
int i,count=0;
try
{
for(i=0;i<3;i++)
{
int l = str[i].length();
for(int j=0;j<l;j++)
{
if(str[i].charAt(j)=='.')
{
count++;
}
else
{
continue;
}
}
if(count!=0)
{
double d = Double.parseDouble(str[i]);
System.out.println(d);
}
else
{
int e = Integer.parseInt(str[i]);
System.out.println(e);
}
}
}
catch(NumberFormatException e)
{
System.out.println("Invalid number");
}
}
}