给定一组数组,它具有不同的值。我必须仅按升序显示一系列数字
(例如)
如果输入是
{45,50,55,60,45,40,50,55}
那么输出应该是
{45,50,55,60,40,50,55}
下面是我的代码
public static void main(String[] args) {
int[] values = { 45, 50, 55, 60, 45, 40, 50, 55 };
for (int i = 0; i < values.length-1; i++) {
if(values[i]<values[i+1]){
System.out.println(values[i]);
}
}
}
它将输出显示为{45, 50, 55, 40, 50}。第四个元素 60 和最后一个元素 55 没有按照我的逻辑显示。
任何人都可以帮助更改此逻辑以显示正确的输出吗?
输出应该是 {45,50,55,60,40,50,55}
最佳答案
作为您的输出,只需按如下方式编辑代码:
public static void main(String[] args) throws Exception {
int[] values = { 45, 50, 55, 60, 45, 40, 50, 55 };
int temp = 0; // create a temp variable
for (int i = 0; i < values.length; i++) {
if(values[i] > temp){// if satisfied; print
System.out.print(values[i]+", ");
temp = values[i];
} else {// else prepare for next loop
temp = 0;
}
}
}
输出:
45, 50, 55, 60, 40, 50, 55,
关于java - 逻辑帮助 - 按升序查找一系列元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39222910/