我创建了几个if else语句,同时解析了一个double,然后答案是double =每个else语句.当我运行该程序时,它运行得很漂亮,除了每个答案如果给出...
//Makes a variable for the entered amount
double mercurypf;
double venuspf;
double earthpf;
double marspf;
double jupiterpf;
double saturnpf;
double uranuspf;
double neptunepf;
double plutopf;
// constants
final double mercuryforce = 0.38;
final double venusforce = 0.91;
final double earthforce = 1.00;
final double marsforce = 0.38;
final double jupiterforce = 2.34;
final double saturnforce = 1.06;
final double uranusforce = .92;
final double neptuneforce = 1.19;
final double plutoforce = 0.06;
// Code used to determine which planet RadioButton is checked:
if(mercury.isChecked())
{
mercurypf = mercuryforce * weight;
}
else
{
mercurypf = 0.00;
}
if(venus.isChecked())
{
venuspf = venusforce * weight;
}
else
{
venuspf = 0.00;
}
if(earth.isChecked())
{
earthpf = earthforce * weight;
}
else
{
earthpf = 0.00;
}
if(mars.isChecked())
{
marspf = marsforce * weight;
}
else
{
marspf = 0.00;
}
if(jupiter.isChecked())
{
jupiterpf =jupiterforce * weight;
}
else
{
jupiterpf = 0.00;
}
if(saturn.isChecked())
{
saturnpf = saturnforce * weight;
}
else
{
saturnpf = 0.00;
}
if(uranus.isChecked())
{
uranuspf = uranusforce * weight;
}
else
{
uranuspf = 0.00;
}
if(neptune.isChecked())
{
neptunepf = neptuneforce * weight;
}
else
{
neptunepf = 0.00;
}
if(pluto.isChecked())
{
plutopf = plutoforce * weight;
}
else
{
plutopf = 0.00;
}
//Creates a textview object, assigns the xml r.id, and then changes the text to report the amount.
TextView t = (TextView)findViewById(R.id.ansTextView);
t.setText("Your planetary weight is: " + plutopf + neptunepf + uranuspf + saturnpf + jupiterpf + marspf + earthpf + mercurypf + venuspf);
}
}
Run Code Online (Sandbox Code Playgroud)
答案将是0.0 0.0 0.0 9.1 0.0 0.0等....除了所选择的星球之外的所有东西都保持0.0>我知道这是由于MY = mercurypf + plutopf ...有没有办法避免必须这样做,但仍然返回他们选择的单选按钮的结果?
只需将结构更改为以下内容即可
// constants
final double mercuryforce = 0.38;
final double venusforce = 0.91;
final double earthforce = 1.00;
final double marsforce = 0.38;
final double jupiterforce = 2.34;
final double saturnforce = 1.06;
final double uranusforce = .92;
final double neptuneforce = 1.19;
final double plutoforce = 0.06;
TextView t = (TextView)findViewById(R.id.ansTextView);
if(uranus.isChecked())
{
double uranuspf = uranusforce * weight;
t.setText("Your planetary weight is: " + uranuspf;
}
else if(mercury.isChecked())
{
double mercurepf = mercuryforce * weight;
t.setText("Your planetary weight is: " + mercurypf;
}
else if( ...
Run Code Online (Sandbox Code Playgroud)
并继续像这样
| 归档时间: |
|
| 查看次数: |
46 次 |
| 最近记录: |