当前位置: 首页 > 知识库问答 >
问题:

如何在java中比较数组的两个奉献号

孔俊捷
2023-03-14

我正在尝试比较数组的两个连续数字,并在每次迭代中打印最大的数字。我已经写了下面的代码,但它给出了意想不到的回应。有人可以检查并帮助我理解错误吗?

PS:我刚开始学习java。

public class Test {
    
    public static void main(String [] args){

       int[] list = {6,0,4,2,9};
       int current;
        for(int j=0; j<list.length-1; j++){
            if(list[j]>list[j+1]){
                current = j;
            }else{
                current = j+1;
            }
        System.out.print(current + " ");
        }
    }
}

Expected response: 6 4 4 9
Actual response: 0 2 2 4 

共有1个答案

法烨华
2023-03-14

好的,所以你的代码只是返回j,这里用作你for循环中的数字。

在您的if中,您使用j作为索引以获取与该索引匹配的list中的值;但是在for循环的其余部分,您将当前设置为j的值,而不是索引j处的list的值。

您要打印的是 list[j] 的值,而不是 j

事实上,如果你仔细看[0 2 2 4][6 4 4 9]的索引

 类似资料:
  • 问题内容: 我有两个像这样的对象数组: 我想知道数组是否相等。我定义的是相等的,因为array1中的每个值都与array2中该位置的值相同。因此,这两个数组将相等。 为什么最好找出这两个数组是否相等? 不是一个很深的等式,所以它是行不通的,我不知道是否遍历每个元素并进行比较是解决此问题的最佳,最有效的方法。有没有人有更好的建议? 编辑:我需要一个可以放入嵌套数组的等于。 问题答案: 使用。这项功能

  • 问题内容: 我正在尝试编写代码以比较两个数组。在第一个数组中,我输入了自己的数字,但是在第二个数组中,输入了输入文件中的数字。该数组的大小由文件中的第一个数字确定,而第一个数组的大小始终为10。两个数组以及数字的长度必须相同。 我的代码如下: 问题答案:

  • 问题内容: 这是一个简单的问题-给定两个URL,是否有一些内置方法或一个Apache库来确定它们在逻辑上是否相等? 例如,这两个URL相等: 问题答案: 尽管(以及有问题的)这些特定示例 未 返回,但我认为这是唯一可以假定等效的情况(因为HTTP协议中没有空路径)。 这些URI 并且可以 不 被认为是等价的。 也许您可以使用包装在实用程序中的方法来显式处理此特定情况。

  • 问题内容: 我有一个带有〜已知二进制序列的字节数组。我需要确认二进制序列是应该的。除之外,我还尝试了其他方法,但均无济于事。 问题答案: 在您的示例中,您具有: 在处理对象时,java中会比较 参考值 。您正在检查对by返回的数组的引用是否与所保存的引用相同,这当然永远不会正确。此外,数组类不会覆盖,因此其行为仅是比较参考值。 为了比较两个数组的 内容 ,Arrays类提供了静态数组比较方法。

  • 问题内容: 我正在尝试比较两个日期,而我只想比较日期部分而不是时间部分,这就是我在程序中存储日期的方式: 我有一个: 我想用 但是由于还涉及时间部分,所以我无法获得正确的答案。我该如何解决我的问题? 我不想使用JODA-TIME 问题答案: 您可以像这样逐个比较价值 要么 如果您使用Date类,请考虑改用Calendar类这是最优雅的解决方案,为此使用Calendar和Comparator 用法: