gpt4 book ai didi

java - 我怎样才能让一个方法重复自己呢? java

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

我有一个填充数组的方法,我需要找到一种方法让它重复多次。目的是迭代和重申行星的密度,以缩小同心壳特定点的质量、重力和密度。这是我的第一个程序,但是,我认为在这方面我学到了很多东西。谢谢大家

这是我的密度计算的代码示例。我可能包含了太多但是哦好吧。所以我需要让这个迭代选定的次数。每次迭代都需要放回到质量计算中,然后将质量计算放回重力计算中。然后表演又开始了。

public class ItrDensityGrid {

public double itrrho[];
double b = InitialConditions.bmod;

// Iterating grid of densities

public ItrDensityGrid(int shells, double radius, double mass){

GravityGrid gg = new GravityGrid(shells, radius, mass);

for(int k = shells; k >= 0; k--){

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

}
}
}

最佳答案

这可以在 Recursion 的帮助下实现,或循环。

在递归中,您从方法本身内部再次调用该方法。确保有条件地调用(或返回),否则可能会导致无限循环!

这是一个带有递归的示例:

public planetMars (double density, double mass) {

// do your calculations
density = density / 10.05312;
mass = mass / 7.2378;
myArray[] = density; // or whatever you want

// if calculations have not narrowed enough, call recursively
if ( density > 5.2)
planetMars (density, mass);
}

或者,使用循环,您可以执行以下操作:

public planetMars (double density, double mass) {

// loop unless the calculation is not cool
while ( density > 5.2) {
// do your calculations
density = density / 10.05312;
mass = mass / 7.2378;
myArray[] = density; // or whatever you want
}
}

关于java - 我怎样才能让一个方法重复自己呢? java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19906401/

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