Java 在数组中查找最高值
这是我的数组代码:Java 在数组中查找最高值,java,arrays,variables,if-statement,printing,Java,Arrays,Variables,If Statement,Printing,这是我的数组代码: int h = 0; int i = 1; while (h < a.length - 1){ if (a[h] < a[i]){ h++; i++; } if (a[h] > a[i]){ a[i] = a[h]; a[h] = a[i + 1]; } } if (h == a.length - 1){ System.out.println(a[i]); }
int h = 0;
int i = 1;
while (h < a.length - 1){
if (a[h] < a[i]){
h++;
i++;
}
if (a[h] > a[i]){
a[i] = a[h];
a[h] = a[i + 1];
}
}
if (h == a.length - 1){
System.out.println(a[i]);
}
inth=0;
int i=1;
而(ha[i]){
a[i]=a[h];
a[h]=a[i+1];
}
}
如果(h==a.length-1){
系统输出println(a[i]);
}
我不知道我做错了什么。我需要学校作业的答案。我在学校的计算机科学课上。看看这个,我不确定你在用什么语言,但我会选择使用
进行
循环,而不是while
int h = 0;
int i = 0;
int v = null;
while (h < a.length - 1){
if(v == null || v < a[i])
{
v = a[i];
h = i;
}
i++;
}
if (v != null){
System.out.println(v); //for value
System.out.println(h); //highest index
System.out.println(a[h]); //for value from array a
}
inth=0;
int i=0;
int v=null;
而(h
尝试创建此方法
public int max(int[] a) {
int temp = a[0];
for (int i = 1; i < a.length; i++) {
if (a[i] > temp) {
temp = a[i];
}
}
return temp;
}
int max=a[0];
int指数=0;
for(int i=1;imax){
max=a[i];
指数=i;
}
}
这是一个在调试器中单步执行代码的机会。你会因此成为一个更好的程序员。您正在使用IDE吗?如果没有,请立即下载一个-它们是免费的,这是一种查找最高值的非常糟糕的方法。在Java中如何将null
分配给int
?您还说您更喜欢for
而不是while
,但是还是用了而。@HotLicks这个问题没有标记为java
,所以我不确定他用的是什么语言。@DennisMeng因为他是编程新手,我想帮助他学会不给他解决方案。fwiw,你也可以只做int[]a={2,3,54}代码>
int[] a = new int[3];
a[0]=2;
a[1]=3;
a[2]=54;
System.out.println("Highest value is "+ max(a));
int max = a[0];
int index = 0;
for (int i = 1; i < a.length; i++) {
if (a[i] > max) {
max = a[i];
index = i;
}
}
Arrays.sort(a);
System.out.println(a[a.length - 1]);