java - 等于运算符不在 if 语句中工作
问题描述
由于某种原因,我的程序不允许使用 if 语句 if (arr == arr[i]),表示 == 运算符不能应用于 double[], double。但是,它适用于我的朋友计划。为什么它不起作用,我该如何解决?这是我的代码:
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("What length (in a whole number) would you like the array to be? ");
int arraySize = sc.nextInt();
double[] arr = new double[arraySize];
for (int i = 0; i < arraySize; i++) {
int requiredInput = arraySize - i;
System.out.println("Please enter " + requiredInput + " more 'double' numbers.");
arr[i] = sc.nextDouble();
}
System.out.println("What 'double' would you like to find the first and last indexes of?");
double searchIndex = sc.nextDouble();
for (int i = 0; i <= arraySize; i++) {
if (arr == arr[i]) {
}
}
System.out.println(Arrays.toString(arr));
}
}
解决方案
如果searchIndex
是要搜索的双精度值,那么您if()
应该如下所示。
if (arr[i] == searchIndex) {
indexPresent = true;
break;
}
推荐阅读
- javascript - Firebase 实时数据库查询字段
- amazon-web-services - 从 Redshift 中的用户定义函数返回表
- html - 如何从主应用程序中分离出包含 css 导入的 html 正文的电子邮件
- python-3.x - 如何在无头模式下运行相机 Kivy 应用程序?
- sql - SQL查询检查另一个表中是否不存在记录
- java - Apache Jena - QueryFactory.create() 非常慢
- amazon-web-services - 如何获得基于 CloudFront URL 模式请求计数的 CloudWatch 指标?
- c - 无辜的输入打破了缓冲区溢出漏洞?
- ios - 当有分页列表时如何测试列表?
- android - 图像未保存在正确的路径中