如何比较java中的两个URL?

r0u*_*u1i 9 java url http

这是一个简单的问题 - 给定两个url,是否有一些内置方法,或者一个Apache库来决定它们(逻辑上)是否相等?

例如,这两个网址是相同的:

http://stackoverflow.com
http://stackoverflow.com/
Run Code Online (Sandbox Code Playgroud)

Joa*_*uer 11

虽然URI.equals()(以及有问题的URL.equals())没有返回true这些特定示例,但我认为这是唯一可以假设等效的情况(因为HTTP协议中没有空路径).

这些URI http://stackoverflow.com/foo并且http://stackoverflow.com/foo/可以被认为是等价的.

也许你可以URI.equals()在一个实用方法中使用wrapped来明确处理这个特定的情况.