jdk/src/java.base/share/classes/java/util/Locale.java
changeset 45124 144479e89cdb
parent 44846 b3f9f5bf40b2
child 45377 13a0c766d059
equal deleted inserted replaced
45123:e0a225dbc346 45124:144479e89cdb
     1 /*
     1 /*
     2  * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.  Oracle designates this
     7  * published by the Free Software Foundation.  Oracle designates this
  1585      * and grandfathered tags are converted to their canonical replacements
  1585      * and grandfathered tags are converted to their canonical replacements
  1586      * where they exist.
  1586      * where they exist.
  1587      *
  1587      *
  1588      * <p>Grandfathered tags with canonical replacements are as follows:
  1588      * <p>Grandfathered tags with canonical replacements are as follows:
  1589      *
  1589      *
  1590      * <table summary="Grandfathered tags with canonical replacements">
  1590      * <table class="striped">
       
  1591      * <caption style="display:none">Grandfathered tags with canonical replacements</caption>
       
  1592      * <thead style="text-align:center">
       
  1593      * <tr><th style="padding: 0 2px">grandfathered tag</th><th style="padding: 0 2px">modern replacement</th></tr>
       
  1594      * </thead>
  1591      * <tbody style="text-align:center">
  1595      * <tbody style="text-align:center">
  1592      * <tr><th>grandfathered tag</th><th>&nbsp;</th><th>modern replacement</th></tr>
  1596      * <tr><td>art-lojban</td><td>jbo</td></tr>
  1593      * <tr><td>art-lojban</td><td>&nbsp;</td><td>jbo</td></tr>
  1597      * <tr><td>i-ami</td><td>ami</td></tr>
  1594      * <tr><td>i-ami</td><td>&nbsp;</td><td>ami</td></tr>
  1598      * <tr><td>i-bnn</td><td>bnn</td></tr>
  1595      * <tr><td>i-bnn</td><td>&nbsp;</td><td>bnn</td></tr>
  1599      * <tr><td>i-hak</td><td>hak</td></tr>
  1596      * <tr><td>i-hak</td><td>&nbsp;</td><td>hak</td></tr>
  1600      * <tr><td>i-klingon</td><td>tlh</td></tr>
  1597      * <tr><td>i-klingon</td><td>&nbsp;</td><td>tlh</td></tr>
  1601      * <tr><td>i-lux</td><td>lb</td></tr>
  1598      * <tr><td>i-lux</td><td>&nbsp;</td><td>lb</td></tr>
  1602      * <tr><td>i-navajo</td><td>nv</td></tr>
  1599      * <tr><td>i-navajo</td><td>&nbsp;</td><td>nv</td></tr>
  1603      * <tr><td>i-pwn</td><td>pwn</td></tr>
  1600      * <tr><td>i-pwn</td><td>&nbsp;</td><td>pwn</td></tr>
  1604      * <tr><td>i-tao</td><td>tao</td></tr>
  1601      * <tr><td>i-tao</td><td>&nbsp;</td><td>tao</td></tr>
  1605      * <tr><td>i-tay</td><td>tay</td></tr>
  1602      * <tr><td>i-tay</td><td>&nbsp;</td><td>tay</td></tr>
  1606      * <tr><td>i-tsu</td><td>tsu</td></tr>
  1603      * <tr><td>i-tsu</td><td>&nbsp;</td><td>tsu</td></tr>
  1607      * <tr><td>no-bok</td><td>nb</td></tr>
  1604      * <tr><td>no-bok</td><td>&nbsp;</td><td>nb</td></tr>
  1608      * <tr><td>no-nyn</td><td>nn</td></tr>
  1605      * <tr><td>no-nyn</td><td>&nbsp;</td><td>nn</td></tr>
  1609      * <tr><td>sgn-BE-FR</td><td>sfb</td></tr>
  1606      * <tr><td>sgn-BE-FR</td><td>&nbsp;</td><td>sfb</td></tr>
  1610      * <tr><td>sgn-BE-NL</td><td>vgt</td></tr>
  1607      * <tr><td>sgn-BE-NL</td><td>&nbsp;</td><td>vgt</td></tr>
  1611      * <tr><td>sgn-CH-DE</td><td>sgg</td></tr>
  1608      * <tr><td>sgn-CH-DE</td><td>&nbsp;</td><td>sgg</td></tr>
  1612      * <tr><td>zh-guoyu</td><td>cmn</td></tr>
  1609      * <tr><td>zh-guoyu</td><td>&nbsp;</td><td>cmn</td></tr>
  1613      * <tr><td>zh-hakka</td><td>hak</td></tr>
  1610      * <tr><td>zh-hakka</td><td>&nbsp;</td><td>hak</td></tr>
  1614      * <tr><td>zh-min-nan</td><td>nan</td></tr>
  1611      * <tr><td>zh-min-nan</td><td>&nbsp;</td><td>nan</td></tr>
  1615      * <tr><td>zh-xiang</td><td>hsn</td></tr>
  1612      * <tr><td>zh-xiang</td><td>&nbsp;</td><td>hsn</td></tr>
       
  1613      * </tbody>
  1616      * </tbody>
  1614      * </table>
  1617      * </table>
  1615      *
  1618      *
  1616      * <p>Grandfathered tags with no modern replacement will be
  1619      * <p>Grandfathered tags with no modern replacement will be
  1617      * converted as follows:
  1620      * converted as follows:
  1618      *
  1621      *
  1619      * <table summary="Grandfathered tags with no modern replacement">
  1622      * <table class="striped">
       
  1623      * <caption style="display:none">Grandfathered tags with no modern replacement</caption>
       
  1624      * <thead style="text-align:center">
       
  1625      * <tr><th style="padding: 0 2px">grandfathered tag</th><th style="padding: 0 2px">converts to</th></tr>
       
  1626      * </thead>
  1620      * <tbody style="text-align:center">
  1627      * <tbody style="text-align:center">
  1621      * <tr><th>grandfathered tag</th><th>&nbsp;</th><th>converts to</th></tr>
  1628      * <tr><td>cel-gaulish</td><td>xtg-x-cel-gaulish</td></tr>
  1622      * <tr><td>cel-gaulish</td><td>&nbsp;</td><td>xtg-x-cel-gaulish</td></tr>
  1629      * <tr><td>en-GB-oed</td><td>en-GB-x-oed</td></tr>
  1623      * <tr><td>en-GB-oed</td><td>&nbsp;</td><td>en-GB-x-oed</td></tr>
  1630      * <tr><td>i-default</td><td>en-x-i-default</td></tr>
  1624      * <tr><td>i-default</td><td>&nbsp;</td><td>en-x-i-default</td></tr>
  1631      * <tr><td>i-enochian</td><td>und-x-i-enochian</td></tr>
  1625      * <tr><td>i-enochian</td><td>&nbsp;</td><td>und-x-i-enochian</td></tr>
  1632      * <tr><td>i-mingo</td><td>see-x-i-mingo</td></tr>
  1626      * <tr><td>i-mingo</td><td>&nbsp;</td><td>see-x-i-mingo</td></tr>
  1633      * <tr><td>zh-min</td><td>nan-x-zh-min</td></tr>
  1627      * <tr><td>zh-min</td><td>&nbsp;</td><td>nan-x-zh-min</td></tr>
       
  1628      * </tbody>
  1634      * </tbody>
  1629      * </table>
  1635      * </table>
  1630      *
  1636      *
  1631      * <p>For a list of all grandfathered tags, see the
  1637      * <p>For a list of all grandfathered tags, see the
  1632      * IANA Language Subtag Registry (search for "Type: grandfathered").
  1638      * IANA Language Subtag Registry (search for "Type: grandfathered").
  2765      *    de-Latn-DE-1996 (German, in Latin script, Germany, orthography of 1996)
  2771      *    de-Latn-DE-1996 (German, in Latin script, Germany, orthography of 1996)
  2766      * </pre>
  2772      * </pre>
  2767      *
  2773      *
  2768      * The filtering method will behave as follows:
  2774      * The filtering method will behave as follows:
  2769      *
  2775      *
  2770      * <table cellpadding=2 summary="Filtering method behavior">
  2776      * <table class="striped">
       
  2777      * <caption>Filtering method behavior</caption>
       
  2778      * <thead>
  2771      * <tr>
  2779      * <tr>
  2772      * <th>Filtering Mode</th>
  2780      * <th>Filtering Mode</th>
  2773      * <th>Language Priority List: {@code "de-DE"}</th>
  2781      * <th>Language Priority List: {@code "de-DE"}</th>
  2774      * <th>Language Priority List: {@code "de-*-DE"}</th>
  2782      * <th>Language Priority List: {@code "de-*-DE"}</th>
  2775      * </tr>
  2783      * </tr>
       
  2784      * </thead>
       
  2785      * <tbody>
  2776      * <tr>
  2786      * <tr>
  2777      * <td style="vertical-align:top">
  2787      * <td style="vertical-align:top">
  2778      * {@link FilteringMode#AUTOSELECT_FILTERING AUTOSELECT_FILTERING}
  2788      * {@link FilteringMode#AUTOSELECT_FILTERING AUTOSELECT_FILTERING}
  2779      * </td>
  2789      * </td>
  2780      * <td style="vertical-align:top">
  2790      * <td style="vertical-align:top">
  2830      * <td style="vertical-align:top">
  2840      * <td style="vertical-align:top">
  2831      * Throws {@link IllegalArgumentException} because {@code "de-*-DE"} is
  2841      * Throws {@link IllegalArgumentException} because {@code "de-*-DE"} is
  2832      * not a valid basic language range.
  2842      * not a valid basic language range.
  2833      * </td>
  2843      * </td>
  2834      * </tr>
  2844      * </tr>
       
  2845      * </tbody>
  2835      * </table>
  2846      * </table>
  2836      *
  2847      *
  2837      * @see #filter(List, Collection, FilteringMode)
  2848      * @see #filter(List, Collection, FilteringMode)
  2838      * @see #filterTags(List, Collection, FilteringMode)
  2849      * @see #filterTags(List, Collection, FilteringMode)
  2839      *
  2850      *