我是靠谱客的博主 认真身影,最近开发中收集的这篇文章主要介绍10 Java中比较数组的值,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

对于String类型来说,String重写了equals方法(比较值);但对与数组来说,因为不是类,不能像一般的类那样使用,数组本身是一个特殊的对象,其equals比较的是内存地址是否一样;

当我们想比较数组的内容是否一样,有两中方式:

1.String类中有一个构造方法 public String (char[] value)

2.使用Arrays类的equals方法(比较值)(推荐)

例子:ArrayTest .java

package com.test;
import java.util.Arrays;
/*
* 比较数组的值
*
* 对于String来说,String可以重写equals方法(比较值),但对与数组来说,因为不是类,不能像一般
* 的类那样使用,数组本身是一个特殊的对象,equals比较的是内存地址是否一样;当我们想比较数组的内容
* 是否一样,有2中方式
* 1.String类中有一个构造方法 public String (char[] value)
* 2.使用Arrays类的equals方法(比较值)
*
*/
public class ArrayTest {
public static void main(String[] args) {
char[] ch1 = new char[2];
ch1[0] = 'a';
ch1[1] = 'b';
char[] ch2 = new char[2];
ch2[0] = 'a';
ch2[1] = 'b';
//数组没有重写Object的equals方法,使用Object的equals方法(比较内存地址)
System.out.println(ch1.equals(ch2));
//false
System.out.println("----------------");
String s1 = new String(ch1);
String s2 = new String(ch2);
//字符串重写Object的equals方法,使用String的equals方法(比较内存地址和值)
System.out.println(s1.equals(s2)); //true
System.out.println("----------------");
//Arrays类(帮助类)的equals方法(比较值)(推荐)
boolean result = Arrays.equals(ch1, ch2); //true
System.out.println(result);
}
}





最后

以上就是认真身影为你收集整理的10 Java中比较数组的值的全部内容,希望文章能够帮你解决10 Java中比较数组的值所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部