Java在数组中找到位置?
所以我必须在Java中的数组中找到最小值,但是我必须在另一个并行数组中打印出与最小值对应的名称。在查找最小值的for循环中,我有一个变量位置,当最小值更改时,我将该位置设置为等于for循环中的计数器变量。但每次我打印出名称时,它都会打印出数组中的第一个名称,而不是占位符中的名称Java在数组中找到位置?,java,arrays,minimum,Java,Arrays,Minimum,所以我必须在Java中的数组中找到最小值,但是我必须在另一个并行数组中打印出与最小值对应的名称。在查找最小值的for循环中,我有一个变量位置,当最小值更改时,我将该位置设置为等于for循环中的计数器变量。但每次我打印出名称时,它都会打印出数组中的第一个名称,而不是占位符中的名称 public double getMinimum(double[] money) { double lowest = money[0]; for (int p = 0; p < money.len
public double getMinimum(double[] money)
{
double lowest = money[0];
for (int p = 0; p < money.length; p++)
{
if (money[p] < lowest)
{
lowest = money[p];
place = p;
}
}
return lowest;
}
这是我用来从那个地方的名字数组中找出名字的代码。我做错了什么?我对java有点陌生,但是以前我做过C++中所有的数组,所以如果我缺少一些非常简单的东西,或者java中的不同,IDK。
public class User {
private double money;
private String fname;
private String lname;
//getters/setters/constructors
}
然后,您可以简单地比较账户:
public User getMinimum(User[] users) {
if (users.length <= 0) {
return null;
}
User lowest = users[0];
for (int i = 1; i < users.length; i++) {
if (users[i].getMoney() < lowest.getMoney()) {
lowest = users[i];
}
}
return lowest;
}
公共用户getMinimum(用户[]用户){
如果(users.length尝试以下操作:
public int getMinIndex(double[] money)
{
double min = money[0];
int minIndex = 0;
for (int p = 0; p < money.length; p++)
{
if (money[p] < min)
{
min = money[p];
minIndex = p;
}
}
return minIndex;
}
public static void main(String[] args)
{
double[] money;
String[] name;
//... init your arrays here!
int index = getMinIndex(money);
System.out.println("Min money = " + money[index] + "; name = " + name[index]);
}
public int getMinIndex(双倍[]货币)
{
双分钟=货币[0];
int minIndex=0;
for(int p=0;p
然而,采用面向对象的方法,rogues的解决方案要好得多!!!没有足够的代码来声明a/执行顺序的身份place
b/也发布一些数据。你在哪里定义place
?你的主要方法是什么?
public int getMinIndex(double[] money)
{
double min = money[0];
int minIndex = 0;
for (int p = 0; p < money.length; p++)
{
if (money[p] < min)
{
min = money[p];
minIndex = p;
}
}
return minIndex;
}
public static void main(String[] args)
{
double[] money;
String[] name;
//... init your arrays here!
int index = getMinIndex(money);
System.out.println("Min money = " + money[index] + "; name = " + name[index]);
}