java多重初始化

java多重初始化,java,javafx,Java,Javafx,是否有一种方法可以以类似的方式同时初始化多个对象: SimpleDoubleProperty sx, sy, vx, vy, dt, ro, w, angle, steps; SimpleDoubleProperty[] prop = {sx,sy,vx,vy,dt,ro,w,angle,steps}; double[] initial = {0,0,10,10,0.1,1,1,60,20}; for(int i=0; i<prop.length; i++){ prop[i]

是否有一种方法可以以类似的方式同时初始化多个对象:

SimpleDoubleProperty sx, sy, vx, vy, dt, ro, w, angle, steps;
SimpleDoubleProperty[] prop = {sx,sy,vx,vy,dt,ro,w,angle,steps};

double[] initial = {0,0,10,10,0.1,1,1,60,20};

for(int i=0; i<prop.length; i++){
    prop[i] = new SimpleDoubleProperty(initial[i]);
}    
但这只是一个更好地说明这个问题的例子

double[] initial = {0,0,10,10,0.1,1,1,60,20};
sx = new SimpleDoubleProperty(initial[0]);
sy = new SimpleDoubleProperty(initial[1]);
vx = new SimpleDoubleProperty(initial[2]);
vy = new SimpleDoubleProperty(initial[3]);
dt = new SimpleDoubleProperty(initial[4]);
ro = new SimpleDoubleProperty(initial[5]);
w = new SimpleDoubleProperty(initial[6]);
angle = new SimpleDoubleProperty(initial[7]);
steps = new SimpleDoubleProperty(initial[8]);  

还有其他方法吗?

您是否关心缩短代码行?虽然只有一点,但我问的主要原因是好奇。缩短代码行的唯一方法是创建一个方法,用于创建可以这样调用的属性:
sx=m(初始值,0);sy=m(首字母,1)(除非您确定反射可以识别字段的顺序,这将使代码难以维护),否则其他一切都会使代码变长。)因此,当我确定顺序时,还有另一种方法?为什么要缩短代码?好处和代价是什么?
double[] initial = {0,0,10,10,0.1,1,1,60,20};
sx = new SimpleDoubleProperty(initial[0]);
sy = new SimpleDoubleProperty(initial[1]);
vx = new SimpleDoubleProperty(initial[2]);
vy = new SimpleDoubleProperty(initial[3]);
dt = new SimpleDoubleProperty(initial[4]);
ro = new SimpleDoubleProperty(initial[5]);
w = new SimpleDoubleProperty(initial[6]);
angle = new SimpleDoubleProperty(initial[7]);
steps = new SimpleDoubleProperty(initial[8]);