src/share/classes/java/net/URI.java

Print this page




1694         return c;
1695     }
1696 
1697     private static boolean equal(String s, String t) {
1698         if (s == t) return true;
1699         if ((s != null) && (t != null)) {
1700             if (s.length() != t.length())
1701                 return false;
1702             if (s.indexOf('%') < 0)
1703                 return s.equals(t);
1704             int n = s.length();
1705             for (int i = 0; i < n;) {
1706                 char c = s.charAt(i);
1707                 char d = t.charAt(i);
1708                 if (c != '%') {
1709                     if (c != d)
1710                         return false;
1711                     i++;
1712                     continue;
1713                 }


1714                 i++;
1715                 if (toLower(s.charAt(i)) != toLower(t.charAt(i)))
1716                     return false;
1717                 i++;
1718                 if (toLower(s.charAt(i)) != toLower(t.charAt(i)))
1719                     return false;
1720                 i++;
1721             }
1722             return true;
1723         }
1724         return false;
1725     }
1726 
1727     // US-ASCII only
1728     private static boolean equalIgnoringCase(String s, String t) {
1729         if (s == t) return true;
1730         if ((s != null) && (t != null)) {
1731             int n = s.length();
1732             if (t.length() != n)
1733                 return false;




1694         return c;
1695     }
1696 
1697     private static boolean equal(String s, String t) {
1698         if (s == t) return true;
1699         if ((s != null) && (t != null)) {
1700             if (s.length() != t.length())
1701                 return false;
1702             if (s.indexOf('%') < 0)
1703                 return s.equals(t);
1704             int n = s.length();
1705             for (int i = 0; i < n;) {
1706                 char c = s.charAt(i);
1707                 char d = t.charAt(i);
1708                 if (c != '%') {
1709                     if (c != d)
1710                         return false;
1711                     i++;
1712                     continue;
1713                 }
1714                 if (d != '%')
1715                     return false;
1716                 i++;
1717                 if (toLower(s.charAt(i)) != toLower(t.charAt(i)))
1718                     return false;
1719                 i++;
1720                 if (toLower(s.charAt(i)) != toLower(t.charAt(i)))
1721                     return false;
1722                 i++;
1723             }
1724             return true;
1725         }
1726         return false;
1727     }
1728 
1729     // US-ASCII only
1730     private static boolean equalIgnoringCase(String s, String t) {
1731         if (s == t) return true;
1732         if ((s != null) && (t != null)) {
1733             int n = s.length();
1734             if (t.length() != n)
1735                 return false;