gpt4 book ai didi

java - 为什么我的方法给我空值?

转载 作者:行者123 更新时间:2023-12-01 23:25:30 25 4
gpt4 key购买 nike

我不明白为什么我会收到这样的值。此方法直接依赖于一个数组,另外两个则间接依赖于数组。它们都填充了相似数量的步骤,但填充的方法有所不同。有些从顶部到零,而另一些则从零开始。如果这没有意义,我可以详细说明

alpha 值是从上到下填充的,而它依赖于另一个从下到上填充的数组。允许吗?

blic class ItrDensityGrid {

public double itrrho [ ]; // defines an a array of adjusted densities

double b = InitialConditions.bmod;

// Iterating grid of adjusted densities

public ItrDensityGrid ( int shells , double radius , double mass , double bmod ) { // Density constructor with inputs

GravityGrid gg = new GravityGrid ( shells , radius , mass , bmod ); // Pulls gravity array for use, will change each iteration

itrrho = new double [ shells + 1 ]; // Defines number of elements in array as shells with steps of 1

for( int k = shells ; k >= 1 ; k -- ){ // for loop fills array from top shell down

itrrho[ k ] = ( itrrho [ k ] * ( 1 + ( gg . alpha [ k ] * ( 1.0 / 2 )))*( 1 / ( 1 - (( gg.alpha[ k ]) * ( 1.0 / 2 ))))); // defines elements form top down

System.out.println("The adjusted density at shell " + k + " is " + itrrho[k]);

}
}

public double itrrho( int k ){

return( itrrho[ k ] );

}
}

最佳答案

itrrho[ k ] = ( itrrho [ k ] *  ( 1 + ( gg . alpha [ k ] * ( 1.0 / 2 )))*( 1 / ( 1 - (( gg.alpha[ k ]) * ( 1.0 / 2 ))))););

此处 itrho[k]初始化,因此 itrho 的每个元素将为 0.0

so itrho [ k ] * ( 1 + ( gg . alpha [ k ] * ( 1.0/2 )))*( 1/( 1 - (( gg.alpha[ k ]) * ( 1.0/2)))))

将是 0.0 * ( 1 + ( gg . alpha [ k ] * ( 1.0/2 )))*( 1/( 1 - (( gg.alpha[ k ]) * ( 1.0/2 ) ))))

因此你得到0.0

new double[shels+1];之后做类似的事情

for(int i=0;i<itrrho.length;i++){
itrrho[i]=1.0; //initialization
}

然后查看结果

关于java - 为什么我的方法给我空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20064485/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com