社区
Java SE
帖子详情
关于java里面比较数组的问题
william0218
2007-06-25 07:04:11
今天写代码的时候,遇到一个奇怪的问题,就是判断两个数组是否相等的时候如果写成“if(arrayA[i] == arrayB[j])”的话,有的时候无法正常判断这两个数组元素是否相等,即使真的相等,也认为不相等,但是有的时候又可以正确判断(我在两个工程里面分别作了这种比较,发现在一个工程里面可以,而在另一个工程里面却不行),如果写成“if(arrayA[i].equals(arrayB[j]))”的话则可以正确判断出来,请问这两种写法区别在哪里呢?谢谢!
...全文
146
4
打赏
收藏
关于java里面比较数组的问题
今天写代码的时候,遇到一个奇怪的问题,就是判断两个数组是否相等的时候如果写成“if(arrayA[i] == arrayB[j])”的话,有的时候无法正常判断这两个数组元素是否相等,即使真的相等,也认为不相等,但是有的时候又可以正确判断(我在两个工程里面分别作了这种比较,发现在一个工程里面可以,而在另一个工程里面却不行),如果写成“if(arrayA[i].equals(arrayB[j]))”的话则可以正确判断出来,请问这两种写法区别在哪里呢?谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bindian
2007-06-25
打赏
举报
回复
equals()比较的是值是否相等,而==比较的是地址是否相等.
foxson1983
2007-06-25
打赏
举报
回复
对象之间比较实际内容用equals(),这是几乎每个类都有的方法,不然有可能比较引用了.
joejoe1991
2007-06-25
打赏
举报
回复
==是比引用 equals是比较内容。
不过我也不知道用在数组元素的时候是比的哪个。。
william0218
2007-06-25
打赏
举报
回复
这就是我写的代码,这段代码可以正确执行,判断数组是否相等,但是在另一个工程里面却无法判断
package test1;
public class Shuzu {
public static void main(String[] args){
String[][] allRecord = new String[17][4];
String[][] menu = new String[17][2];
allRecord[0][0] = "men1";
allRecord[0][1] = "受注管理";
allRecord[0][2] = "m101";
allRecord[0][3] = "申込確認";
allRecord[1][0] = "men1";
allRecord[1][1] = "受注管理";
allRecord[1][2] = "m105";
allRecord[1][3] = "qweqweqweqweqweqweqweqweq";
allRecord[2][0] = "men1";
allRecord[2][1] = "受注管理";
allRecord[2][2] = "m104";
allRecord[2][3] = "dfsdfsdfsdfsdfsdfsdfsdf";
allRecord[3][0] = "men1";
allRecord[3][1] = "受注管理";
allRecord[3][2] = "m103";
allRecord[3][3] = "受注一括承認";
allRecord[4][0] = "men1";
allRecord[4][1] = "受注管理";
allRecord[4][2] = "m102";
allRecord[4][3] = "受注一覧";
allRecord[5][0] = "men2";
allRecord[5][1] = "仕入売上管理";
allRecord[5][2] = "m202";
allRecord[5][3] = "仕入一覧";
allRecord[6][0] = "men2";
allRecord[6][1] = "仕入売上管理";
allRecord[6][2] = "m205";
allRecord[6][3] = "";
allRecord[7][0] = "men2";
allRecord[7][1] = "仕入売上管理";
allRecord[7][2] = "m204";
allRecord[7][3] ="";
allRecord[8][0] = "men2";
allRecord[8][1] = "仕入売上管理";
allRecord[8][2] = "m203";
allRecord[8][3] = "";
allRecord[9][0]= "men2";
allRecord[9][1] = "仕入売上管理";
allRecord[9][2] = "m201";
allRecord[9][3] = "zxczxczxczxczxczxczxczczxc";
allRecord[10][0] = "men3";
allRecord[10][1] = "売上管理";
allRecord[10][2] = "m302";
allRecord[10][3] = "";
allRecord[11][0] = "men3";
allRecord[11][1] = "売上管理";
allRecord[11][2] = "m301";
allRecord[11][3] = "";
allRecord[12][0] = "men3";
allRecord[12][1] = "売上管理";
allRecord[12][2] = "m303";
allRecord[12][3] = "";
allRecord[13][0] = "men4";
allRecord[13][1] = "請求管理";
allRecord[13][2] = "m402";
allRecord[13][3] = "";
allRecord[14][0] = "men4";
allRecord[14][1] = "請求管理";
allRecord[14][2] = "m403";
allRecord[14][3] = "FBデータ取込";
allRecord[15][0] = "men4";
allRecord[15][1] = "請求管理";
allRecord[15][2] = "m404";
allRecord[15][3] = "入金一覧";
allRecord[16][0] = "men4";
allRecord[16][1] = "請求管理";
allRecord[16][2] = "m401";
allRecord[16][3] = "請求書作成";
int count = 0;
out:
for (int i = 0; i < allRecord.length;i++){
for(int j = 0; j < menu.length; j++){
if(allRecord[i][0] == menu[j][0]){
continue out;
}
}
menu[count][0] = allRecord[i][0];
menu[count][1] = allRecord[i][1];
count += 1;
}
System.out.println("allRecord.length =="+allRecord.length);
for (int i = 0; i < allRecord.length; i++){
for (int j = 0; j < allRecord[i].length; j++){
System.out.println("allRecord["+i+"]["+j+"]=="+allRecord[i][j]);
}
}
System.out.println("menu.length =="+menu.length);
for (int i = 0; i < menu.length; i++){
for (int j = 0; j < menu[i].length; j++){
System.out.println("menu["+i+"]["+j+"]=="+menu[i][j]);
}
}
}
}
基于SpringBoot3+
Java
17基础架构研发框架规范编码实战
常见
问题
: 问:是否讲解
Java
17和SpringBoot3新特性 答:本课程的重点会侧重放在研发框架的基础规范编码上,并非专注于SpringBoot3.x和
Java
17的新特性上讲解。主要是两点原因,1课程的方向侧重点是框架基础规范编码...
java
数组
里面
放
数组
_
java
中怎么在
数组
里面
存放
数组
今天在用
java
写程序的时候,遇到一个
问题
,怎么在
数组
里面
里面
存放
数组
呢?如你所知,在
java
里面
声明一个
数组
是这样的:String arr[]或者int arr[]等等,即要声明其数据类型,String arr[]代表
数组
里面
要存放字符串,而int arr[]代表
数组
里面
要存放整型数,依次类推。那我想在
数组
里面
存放
数组
该怎么办?百度了一下,发现竟然没什么人遇到这个
问题
。后来我才发现,应该是我死脑...
java
数组
里面
放
数组
_
java
中添加
数组
元素
public class ArrayTest {public static void main(String[] args){int[] array = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };Arrays.sort(array);printArray("数据排序结果为:", array);int index = Arrays.binarySearch(array...
java
怎么给
数组
添加数据_
java
如何向
数组
里添加元素
本文收集整理关于
java
如何向
数组
里添加元素的相关议题,使用内容导航快速到达。内容导航:Q1:
java
数组
如何循环添加元素public static void main(String[] args) {int a=9;int b=5;int c=2;int d=7;int []sult=new int[4];for(int i=0;i{switch(i){case 0:sult[i]=a;cont...
java
如何向
数组
里添加元素
java
篇 哇,菜鸟第一次写这个东西,当加深印象,大佬们请略过,欢迎有错指出。 向
数组
里添加一个元素怎么添加,这儿总结有三种方法: 1、一般
数组
是不能添加元素的,因为他们在初始化时就已定好长度了,不能改变长度。 但有个可以改变大小的
数组
为ArrayList,即可以定义一个ArrayList
数组
,然后用add(element)方法往里添加元素即可,还可add(index,element)往指...
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章