我正在尝试动态分配变量,但我不知道如何做到这一点。
我的程序应该做什么:
“编写一个程序让用户输入三个边长并确定图形是否为三角形。”
这是我到目前为止所拥有的:
package triangle;
import javax.swing.JOptionPane;
public class Triangle {
public static void main(String[] args) {
String x = JOptionPane.showInputDialog("Please enter the side lengths of a triangle with each side \nseparated with a ',' and without spaces. (eg. 1,2,3)");
x += ",";
int y = -1, a = 0;
double z;
for(int i = 0; i < x.length(); i++)
{
if(x.charAt(i) == ',')
{
z = Double.parseDouble(x.substring((y + 1), i));
y = i;
a += z;
}
}
}
}
我想做的是在 if 语句中有这个:
int a++;
z(a) = Double.parseDouble(x.substring((y + 1), i));
但是我发现这不起作用,我需要某种数组。可悲的是,我的在线课程还没有开始阵列,我在自己的学习中还没有掌握它们。
我想创建 3 个变量(z1、z2、z3)并在 if 语句中为每个变量分配一个整数。
编辑:这里有一些修改后的代码,现在可以按照我想要的方式工作。希望这对将来的其他人有所帮助!
package triangle;
import javax.swing.JOptionPane;
public class Triangle {
public static void main(String[] args) {
String x = JOptionPane.showInputDialog("Please enter the side lengths of a triangle with each side \nseparated with a ',' and without spaces. (eg. 1,2,3)");
x += ",";
int y = -1, a = 0;
Double[] z = new Double[3];
for(int i = 0; i < x.length(); i++)
{
if(x.charAt(i) == ',')
{
z[a] = Double.parseDouble(x.substring((y + 1), i));
y = i;
a++;
}
}
//Some test code to see if it was working
System.out.println(z[0]);
System.out.println(z[1]);
System.out.println(z[2]);
}
}