java如何判断数组中的任意两个元素是否相等

2020-11-26 13:36:04 字数 7627 阅读 2684

1楼:匿名用户

举个例子 int shus=;

boolean flag=true;

for(int i=0;i

2楼:匿名用户

like this

int a = ;

int b =a;

for(a1:a)}}

3楼:yongheng胡

对数组双层循环进行判断呀

4楼:匿名用户

如果是java内置的基础数据类型,可以直接是有equals比较。

如果是用户自定义数据类型,需要重写equals和hashcode。

5楼:牢语蓉寻冰

那要看数组元素是干什么了

比如是基础类型,如int,long

byte

等等,那肯定都不是空,默认为0

如果是object,直接判断就可以了,比如object

objs

=new

object[2];if(objs[0]

==null)

6楼:

如后说的是值,那么把值取出来,然后比较,int 型用==,string型用.equals就可以比较出值。如果是指的其它,那么就是不相同的。

7楼:匿名用户

一个方法 3个参数

外加几个正则搞定

java中如何比较两个数组中元素是否相同

8楼:匿名用户

import java.util.arrays;

public class test ;

string array2 = ;

arrays.sort(array1);

arrays.sort(array2);

if (arrays.equals(array1, array2)) else

} }

java判断两个字符串数组的,可以判断两个数组中的每一个元素是否相等?求大神指教

9楼:停下脚步看风

用循环来比较两个数组的元素是否相等,然后在循环外定义个数组来接受比较结果

在java里如何判断两个一维数组相等

10楼:索慕瞳

方法一:

char a = ;

char b = ;

//对a, b 数组

赋值操作

if (a.length != b.length)else

}system.out.println("两个数组不相等");

}方法二:

char a = ;

char b = ;

//对a, b 数组赋值操作

string sa = string.valueof(a);

string sb = string.valueof(b);

if( sa.equals(sb) )

system.out.println("两个数组相等");

else

system.out.println("两个数组不相等");

11楼:匿名用户

int num1=new int;

int num2=new int;

int k=1;

for(int i=0;i都相

等");

}else

12楼:匿名用户

if ( array1.length != array2.length )

return false;

for( int i = 0 ; i < array1.length ; i++ )

if ( array1[i] != array2[i] )

return false;

return true;

string 比较

if ( array1.length != array2.length )

return false;

for( int i = 0 ; i < array1.length ; i++ )

if( !array1.equals(array2) )

return false;

return true;

java中判断两个数组是否相等的方法是什么?

13楼:slim丶风

||还是用arrays.equals吧

==是比较地址

equals主要用来单个比较

下面是 arrays.equals方法的源码public static boolean equals(long a, long a2)

java中判断两个数组是否相等的方法

14楼:匿名用户

两个方法,第一个比较常规,第二个特别适合字符数组的判断。

方法一:

char a = ;

char b = ; //对a, b 数组赋值操作if (a.length != b.

length) else} system.out.println("两个数组不相等");

}方法二:

char a = ;

char b = ; //对a, b 数组赋值操作string sa = string.valueof(a);

string sb = string.valueof(b);

if( sa.equals(sb) )

system.out.println("两个数组相等");

else

system.out.println("两个数组不相等");

15楼:slim丶风

|还是用arrays.equals吧

==是比较地址

equals主要用来单个比较

下面是 arrays.equals方法的源码public static boolean equals(long a, long a2)

16楼:匿名用户

使用equals方法来进行判断。

stringa=newstring("abc");

stringb=newstring("abc");

if(a.equals(b))else

equals比较的是内容,只要值相同就是true。

java中如何判断两个string是否相等

17楼:ijava学习网

1. 在java中,不能用“==”和“!=”来判断两个字符串是否相等。因为string是引用类型,而不是基本数据类型。

故它们的比较是使用地址和值

来比较,因为它们是不同的对象,有不同的地址。故str1==str2永远是false,而str1!=str2永远都是true。

2. java中必须使用string1.equals(string2)来进行判断

string s1="hello";

string s2="hello";

则(s1==s2)=true;

因为他们指向的同一个对象。

string s1=new string("hello");

string s2=new string("hello");

则(s1==s2)=false

如果把其他变量的值赋给s1和s2,即使内容相同,

由于不是指向同一个对象,也会返回false。

所以建议使用equals(),因为equals比较的才是真正的内容

3.案例

string string1=new string( "aaa" );

string string2=new string( "aaa" );

这两个字符串当然应该是相等的。

如果用表达式string1==string2,则该表达式的值为false

如果用表达式string1.equals(string2),则该表达式的值为true

18楼:追忆小土豆

通过equals进行判断字符串是否不相等.

string中equals()方法

覆盖了父类的object方法,比较规则为:如果两个对象的类型一致,并且内容一致,则返回true,否则返回false.

例如:string a = "abc";

string b = "abc";

if(a.equals(b))else

19楼:匿名用户

object 有个方法叫 equals(obj) 就是用来比较两个对象是否相等的

返回值是个boolean类型

string就重写了这个方法,用来比较两个字符串是否相等例如 string s = "aa";

string s2 = "aaa";

boolean btn = s.equals(s2);

string有非常多的方法,请查看jdk的api

20楼:艾艾艾软件

1,判断相等的两个方法:

(1)== :用于基本数据类型的判断(基本数据类型包括: byte,short,int,long,double,float,boolean)

(2)a .equals(b):用于引用类型的判断

2,例如:

student stu1=new student("zhangsan");

student stu2=new student("zhangsan");

stu1和stu2是student类下的两个不同的对象,内存区域不相同,因此判断时

如果用stu1==stu2 结果为false

如果用stu1.equals(stu2) 结果为true

21楼:醉行侠

用equals判断即可。示例:

packagea;

publicclasstestreturn}将会输出:false true

java如何在遍历两个数组后,来判断数组的每个元素内容是否一样

22楼:雪飞潇潇

思路1: (好理解, 但效率较低,特别是数组较大时)

数组比较每个元素是否相等:

1. 如果数组为null 或者数组的元素个数不相等 , 那么返回false

2. 先把数组排序, 然后逐一比较, 如果有一个元素不相等就返回false. 否则返回true

思路2: (**稍微多点,但是效率高点)

前面部分和思路1 都一样

只是第2步, 为了省去排序的性能和时间的浪费, 添加两个boolean数组来对应之前的数组,用于标记哪些数字已经使用过了,下次就不要使用了. 虽然**更多,但是当数组比较长时. 这种方法效率还可以

思路3: (只算一种思路, 也能实现,就不给出具体**了)

使用集合hashmap(k,v) k存放元素,v存放出现的次数

思路1 参考**

importjava.util.arrays;

publicclassarraystest;

intary2=;

intary3=;

booleanb=***pareary(ary1,ary2);

system.out.println(b?"ary1和ary2数组元素都相等":"ary1和ary2数组元素不相等");

booleanb1=***pareary(ary2,ary3);

system.out.println(b1?"ary2和ary3数组元素都相等":"ary2和ary3数组元素不相等");

}publicstaticboolean***pareary(intary1,intary2)

if(ary1==ary2)

/**先排序,再逐一比较

*///为了排序不会影响原始的数组顺序,所以把2个数组复制出来

intt1=newint[ary1.length];

system.arraycopy(ary1,0,t1,0,ary1.length);

intt2=newint[ary2.length];

system.arraycopy(ary2,0,t2,0,ary2.length);

//排序

arrays.sort(t1);

arrays.sort(t2);

for(inti=0;i

}returntrue;//前面都没有返回,说明元素都相等,这里就返回true}}

思路二publicclassarraysdemo;

intary2=;

intary3=;

booleanb=***pareary(ary1,ary2);

system.out.println(b?"ary1和ary2数组元素都相等":"ary1和ary2数组元素不相等");

booleanb1=***pareary(ary2,ary3);

system.out.println(b1?"ary2和ary3数组元素都相等":"ary2和ary3数组元素不相等");

}publicstaticboolean***pareary(intary1,intary2)

if(ary1==ary2)

booleanb1=newboolean[ary1.length];

booleanb2=newboolean[ary1.length];

for(inti=0;i

inttemp=ary1[i];

for(intj=0;j

if(temp==ary2[j])

}if(flag==false)

}returntrue;//经历上面重重艰难险阻,都没有返回,那么说明两数组的元素内容相同了,返回true}}

拓展注意,关于null这个小问题,多写点

每个人理解题目不一样, 题目要求数组每个元素相同,所以,我觉得数组就不能为null了.但是元素个数可以为0

所以 **如下

.....

//如果数组为null或者数组的元素个数不相等,直接返回false

if(ary1==null||ary2==null||ary1.length!=ary2.length)

//如果两个数组哈希值一样,那么直接返回true,就不必去循环比较了

if(ary1==ary2)

....

当然,有的人认为,两个数组都是null 也可以返回true, 写法如下

......

//null也是等于null的

if(ary1==ary2)

if(ary1!=null&&ary2!=null)

}else

.....

以上 ~抛砖引玉!

java中判断两个数组是否相等的方法是什么

1楼 slim丶风 还是用arrays equals吧 是比较地址 equals主要用来单个比较 下面是 arrays equals方法的源码public static boolean equals long a long a2 java中判断两个数组是否相等的方法 2楼 匿名用户 两个方法,第一个...

C语言如何删除数组中的重复元素,C语言删除一个整型数组里面重复的元素

1楼 include stdafx h vc 6 0加上这一行 include stdio h void main void ln for ln sizeof a sizeof int k i 1 i k a k a i for i 0 i printf n c语言删除一个整型数组里面重复的元素 2...

下面各项中的两个比,比值相等的是A

1楼 玖 a 0 6 0 2 3 1,1 4 3 4 1 3 故 该选项错误 b 6 8 3 4,8 20 2 5 故该选项错误 c 1 3 1 4 4 3,8 6 4 3 即1 3 1 4 8 6 故正确 d 3 4 3 5 5 4,故该选项错误 故选c 下列各组数中,可以组成比例的是 a 1 2...