Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类引用

Java 有用资源

Java - URL equals() 方法及示例



描述

Java URL equals(E e) 方法根据以下标准比较当前 URL 对象与另一个对象是否相等:

  • 如果给定对象不是 URL,则返回 false。

  • 如果两个 URL 对象都具有相同的协议、引用等效的主机、主机上的相同端口号以及相同的文件和文件的片段,则它们相等。

  • 如果两个主机名都可以解析为相同的 IP 地址,则认为这两个主机等效。

  • 如果任一主机名无法解析,则主机名必须相等,不区分大小写。

  • 两个主机名都等于 null,则返回 true。

由于主机比较需要名称解析,因此此操作是阻塞操作。

声明

以下是 java.net.URL.equals(Object obj) 方法的声明

public boolean equals(Object obj)

参数

obj − 要比较的 URL 对象。

返回值

如果对象相同,则返回 true;否则返回 false。

异常

示例 1

以下示例演示了 Java URL equals(Object e) 方法的使用。在此示例中,我们创建了 URL 和 URLConnection 类的实例。现在,使用 equals 方法比较这两个对象。由于是不同类型的对象,结果如预期的那样为 false,并在输出中验证如下所示:

package com.tutorialspoint;

import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;

public class UrlDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.com/index.htm?language=en#j2se");
         URLConnection urlConnection = url.openConnection();
         System.out.println(url.equals(urlConnection));
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

让我们编译并运行上述程序,这将产生以下结果:

输出

false

示例 2

以下示例演示了 Java URL equals(Object e) 方法的使用。在此示例中,我们创建了两个具有相同 url 的 URL 类的实例。现在,使用 equals 方法比较这两个对象。由于对象基于相同的 url,结果如预期的那样,并在输出中验证如下所示:

package com.tutorialspoint;

import java.io.IOException;
import java.net.URL;

public class UrlDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.com/index.htm?language=en#j2se");
         URL urlToCompare = new URL("https://tutorialspoint.com/index.htm?language=en#j2se");
         System.out.println(url.equals(urlToCompare));
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

让我们编译并运行上述程序,这将产生以下结果:

输出

true

示例 3

以下示例演示了 Java URL equals(Object e) 方法的使用。在此示例中,我们创建了两个具有相同 url 的 URL 类的实例,在另一个实例中,我们还传递了主机和文件名。现在,使用 equals 方法比较这两个对象。由于对象现在不同,结果如预期的那样,并在输出中验证如下所示:

package com.tutorialspoint;

import java.io.IOException;
import java.net.URL;

public class UrlDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.com/index.htm?language=en#j2se");
         URL urlToCompare = new URL("https", "https://tutorialspoint.com/index.htm?language=en#j2se","index.htm" );
         System.out.println(url.equals(urlToCompare));
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

让我们编译并运行上述程序,这将产生以下结果:

输出

false
java_url.htm
广告