gpt4 book ai didi

java - '==' 运算符和 Equals/compareTo 方法均不起作用

转载 作者:行者123 更新时间:2023-11-30 04:05:15 25 4
gpt4 key购买 nike

我试图接受一个数字数组,并输出输入的数字是否不同。我检查了之前的相关问题:

1)使用“==”运算符不会给我正确的输出,即如果输入“2,3,4”作为命令行参数(输入),它仍然返回“数字不明确”。在这种情况下,程序可以编译并运行,但没有给出正确的输出。

2) 使用“equals”和“compareTo”方法在编译时返回错误,“int 无法取消引用!”这里编译本身并不成功。

我的代码如下:

class DistinctNoCheck
{
public static void main(String[] args)
{ int temp = 0;
int [] a = new int [10];
for(int i=0;i<args.length;i++)
{
a[i] = Integer.parseInt(args[i]);
}
for(int i=0;i<a.length;i++)
{
temp = a[i];
for(int j=0;j<a.length;j++)
{
if((a[j] == temp) && (!(i == j)))
{
System.out.println("Numbers are not distinct!");
System.exit(0);
}
}
}
System.out.println("Numbers are distinct!");
}
}

最佳答案

您正在使用 a.length,即 10。您应该在迭代数组时使用 args.length

替换

for(int j=0;j<a.length;j++)

for(int j=0;j<args.length;j++)

对于 i 变量的循环也是如此。

关于java - '==' 运算符和 Equals/compareTo 方法均不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20931847/

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