ResourceBuddle之疑惑
时间:2014-03-05 17:41:51
收藏:0
阅读:468
package com.test.javaSe; import java.text.MessageFormat; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.ListResourceBundle; import java.util.Map; import java.util.Set; class KeyValue { Object key; Object value; public KeyValue() { } public KeyValue(Object key, Object value) { this.key = key; this.value = value; } public String toString() { return this.key + "=" + this.value; } } /** * @deprecated \u8BE5\u5DE5\u5177\u7C7B\u501F\u53E3\u5B9A\u4E49\u4E86\u5411\u8D44\u6E90\u7C7B\u4E2D\u6DFB\u52A0\uFF0C\u5220\u9664\uFF0C\u5224\u65AD\u65F6\u5019\u5305\u542Bkey\uFF0C\u83B7\u53D6\u6240\u6709\u7684key\uFF0C\u83B7\u53D6\u6240\u6709\u7684value\uFF0C\u7B49\u65B9\u6CD5 * @author Administrator */ interface ResourceBundleUtil { public List<Object> keyList = new ArrayList<Object>(); public List<Object> valueList = new ArrayList<Object>(); public static Map<Object, Object> keyValue = new HashMap<Object, Object>(); public static Object data[][] = null; /** * @deprecated \u8BE5\u65B9\u6CD5\u7528\u4E8E\u5411\u8D44\u6E90\u7C7B\u4E2D\u6DFB\u52A0\u65B0\u7684\u6570\u636E * @param kv */ public void add(KeyValue kv); /** * @deprecated \u8BE5\u65B9\u6CD5\u7528\u4E8E\u5411\u8D44\u6E90\u7C7B\u4E2D\u6DFB\u52A0\u65B0\u7684\u6570\u636E * @param kv */ public void add(Object key, Object value); /** * @deprecated \u5C06map\u4E2D\u7684\u6570\u636E\u8F6C\u6362\u6210Object\u6570\u7EC4 * @return \u8FD4\u56DEdate */ public Object[][] getData(); /** * @deprecated \u8BE5\u65B9\u6CD5\u7528\u4E8E\u5411\u8D44\u6E90\u7C7B\u4E2D\u5220\u9664\u76F8\u5BF9\u5E94\u7684key\u7684\u6570\u636E * @param key */ public void delete(Object key); /** * @deprecated \u5224\u65AD\u8BE5\u8D44\u6E90\u7C7B\u4E2D\u662F\u5426\u5305\u542B\u67D0key * @param key * @return \u5982\u679C\u5305\u542Bkey\u8FD4\u56DEtrue\u5426\u5219\u8FD4\u56DEfalse */ public boolean isContains(Object key); /** * @deprecated \u5F97\u5230\u6240\u6709\u7684key\u8FD4\u56DE\u7C7B\u578B\u4E3Alist * @return \u6240\u6709\u7684key */ public ArrayList<Object> getKey(); /** * @deprecated \u5F97\u5230\u6240\u6709\u7684value \u8FD4\u56DE\u7684\u662Flist * @return \u6240\u6709\u7684value */ public ArrayList<Object> getValues(); } /** * @deprecated \u8BE5\u5DE5\u5177\u7C7B\u5B9A\u4E49\u4E86\u5411\u8D44\u6E90\u7C7B\u4E2D\u6DFB\u52A0\uFF0C\u5220\u9664\uFF0C\u5224\u65AD\u65F6\u5019\u5305\u542Bkey\uFF0C\u83B7\u53D6\u6240\u6709\u7684key\uFF0C\u83B7\u53D6\u6240\u6709\u7684value\uFF0C\u7B49\u65B9\u6CD5 * @author Administrator * @deprecated \u8BE5\u7C7B\u6709\u70B9\u602A\u5F02\uFF0C\u602A\u5F02\u5728\u4E8E * @deprecated(1) \u4E0A\u53E5\u8BDD\u6267\u884C\u540Emap\u5DF2\u7ECF\u4E3A\u7A7A \u4E14\u5F53\u6267\u884C\u8FC7 containsKey()\u65B9\u6CD5\u540E * MessageFormat.format(rbui.getString("ctl"), "-->\u8FD8\u597D\u4E86"); * MessageFormat.format(rbui.getString("hjj"), "-->henan"); \u8FD8\u53EF\u4EE5\u6267\u884C * \u5982\u679CcontainsKey()\u6B64\u65B9\u6CD5\u6CA1\u6709\u6267\u884C * \u5C31\u6267\u884CMessageFormat.format(rbui.getString("ctl"), "-->\u8FD8\u597D\u4E86"); * MessageFormat.format(rbui.getString("hjj"), "-->henan"); \u5219\u4F1A\u6709\u5F02\u5E38 * @deprecated(2)\u5982\u679C\u5728\u6CA1\u6709\u6267\u884CcontainsKey()\u65B9\u6CD5\u4E14\u6267\u884CMessageFormat.format\u540E\u5728\u6267\u884Cdelete\u64CD\u4F5C\uFF0C\u518D\u6267\u884C * MessageFormat.format() * \u867D\u7136Map\u4E2D\u5DF2\u7ECF\u4E3A\u7A7A\uFF0C\u4F46\u662F\u6570\u636E\u6267\u884C\u7684\u7ED3\u679C\u4F9D\u65E7\u662F\u6CA1\u6709\u6267\u884Cdelete\u7684\u7ED3\u679C * \u4E4B\u6240\u4EE5\u53EF\u4EE5\u76F4\u63A5\u4F7F\u7528ResourceBundleUtilImpl\u7684\u5BF9\u8C61\u8C03\u7528getString\u65B9\u6CD5 * \u662F\u56E0\u4E3AResourceBundleUtilImpl extends ListResourceBundle extends ResourceBundle * \u800CgetString\u53C8\u662FResourceBuddle\u7684\u65B9\u6CD5 ,\u6240\u4EE5ResourceBundleUtilImpl * \u7684\u5BF9\u8C61\u53EF\u4EE5\u76F4\u63A5\u4F7F\u7528 * @deprecated(3)\u4E2A\u4EBA\u8BA4\u4E3A\u672C\u7C7B\u7D2F\u6B7Bproperties\u6587\u4EF6\uFF0C\u6BCF\u6B21\u4F7F\u7528\u65F6\u5FC5\u987B\u91CD\u65B0\u52A0\u8F7D\uFF0C\u5728\u4F7F\u7528\u8FC7\u7A0B\u4E2D\u5BF9\u4E4B\u8FDB\u884C\u4FEE\u6539\u4E0D\u51D1\u6548 */ class ResourceBundleUtilImpl extends ListResourceBundle implements ResourceBundleUtil { /** * @deprecated \u8BE5\u65B9\u6CD5\u7528\u4E8E\u5411\u8D44\u6E90\u7C7B\u4E2D\u6DFB\u52A0\u65B0\u7684\u6570\u636E * @param kv */ public void add(KeyValue kv) { keyValue.put(kv.key, kv.value); } /** * @deprecated \u8BE5\u65B9\u6CD5\u7528\u4E8E\u5411\u8D44\u6E90\u7C7B\u4E2D\u5220\u9664\u76F8\u5BF9\u5E94\u7684key\u7684\u6570\u636E * @param key */ public void delete(Object key) { keyValue.remove(key); } /** * @deprecated \u5224\u65AD\u8BE5\u8D44\u6E90\u7C7B\u4E2D\u662F\u5426\u5305\u542B\u67D0key * @param key * @return \u5982\u679C\u5305\u542Bkey\u8FD4\u56DEtrue\u5426\u5219\u8FD4\u56DEfalse */ public boolean isContains(Object key) { // Set<Object> set = new HashSet<Object>(); // set = keyValue.keySet(); // Iterator<Object> iter = set.iterator(); // Object temp=null; // for (; iter.hasNext();) { // temp= iter.next(); // if(temp.equals(key)) // return true; // } return keyValue.containsKey(key); } protected Object[][] getContents() { // System.out.println("\u8FDB\u5165getContents()"); return getData(); } /** * @deprecated \u5F97\u5230\u6240\u6709\u7684value \u8FD4\u56DE\u7684\u662Flist * @return \u6240\u6709\u7684value */ public ArrayList<Object> getValues() { ArrayList<Object> values = new ArrayList<Object>(); Set<Object> set = new HashSet<Object>(); set = keyValue.keySet(); Iterator<Object> iter = set.iterator(); Object temp = null; for (; iter.hasNext();) { temp = iter.next(); values.add(keyValue.get(temp)); } return values; } /** * @deprecated \u5F97\u5230\u6240\u6709\u7684key\u8FD4\u56DE\u7C7B\u578B\u4E3Alist * @return \u6240\u6709\u7684key */ public ArrayList<Object> getKey() { ArrayList<Object> keys = new ArrayList<Object>(); Set<Object> set = new HashSet<Object>(); set = keyValue.keySet(); Iterator<Object> iter = set.iterator(); Object temp = null; for (; iter.hasNext();) { temp = iter.next(); keys.add(temp); } return keys; } /** * @deprecated \u5C06map\u4E2D\u7684\u6570\u636E\u8F6C\u6362\u6210Object\u6570\u7EC4 * @return \u8FD4\u56DEdate */ public Object[][] getData() { // System.out.println("\u8FDB\u5165getData()"); int size = keyValue.size(); if (size == 0) { System.out.println("\u6CA1\u6709\u6570\u636E \u8FD4\u56DEnull"); return null; } // System.out.println("keyValue.size()=" + size); Object data[][] = new Object[size][]; Set<Object> set = new HashSet<Object>(); set = keyValue.keySet(); Iterator<Object> iter = set.iterator(); Object key = null; Object value = null; int num = 0; for (; iter.hasNext();) { key = iter.next(); value = keyValue.get(key); data[num] = new Object[2]; data[num][0] = key; data[num][1] = value; num++; } return data; } /** * @deprecated \u8BE5\u65B9\u6CD5\u7528\u4E8E\u5411\u8D44\u6E90\u7C7B\u4E2D\u6DFB\u52A0\u65B0\u7684\u6570\u636E * @param key * @param value */ public void add(Object key, Object value) { keyValue.put(key, value); } } public class UseClassReplaceResourceBundle_zh_CN03 { public static void main(String[] args) { ResourceBundleUtilImpl rbui = new ResourceBundleUtilImpl(); rbui.add(new KeyValue("ctl", "\u4F60\u8FD8\u597D\u5417?{0}")); rbui.add(new KeyValue("hjj", "where are you ?{0}")); // System.out.println(rbui.containsKey("ctl"));//true // System.out.println(rbui.containsKey("ctllin"));//false try { String name = MessageFormat.format(rbui.getString("ctl"), "-->\u8FD8\u597D\u4E86"); String value1 = MessageFormat.format(rbui.getString("hjj"), "-->henan"); System.out.println(name); System.out.println(value1); } catch (Exception e) { System.err.println("\u5173\u952E\u5B57\u4E0D\u518D\u6570\u636E\u4E2D"); } rbui.delete("ctl"); rbui.delete("hjj"); try { String name = MessageFormat.format(rbui.getString("ctl"), "-->\u8FD8\u597D\u4E86"); String value1 = MessageFormat.format(rbui.getString("hjj"), "-->henan"); System.out.println(name); System.out.println(value1); } catch (Exception e) { System.err.println("\u5173\u952E\u5B57\u4E0D\u518D\u6570\u636E\u4E2D"); } ResourceBundleUtilImpl obj = new ResourceBundleUtilImpl(); obj.add("name","ctl{0}"); obj.add("age","23{0}"); obj.delete("name"); obj.delete("age"); try { System.out.println(obj.getString("name")); System.out.println(obj.getString("age")); } catch (Exception e) { System.err.println("\u5173\u952E\u5B57\u4E0D\u518D\u6570\u636E\u4E2D (\u6CA1\u6709\u8C03\u7528containsKey)"); } ResourceBundleUtilImpl obj1 = new ResourceBundleUtilImpl(); obj1.add("name","ctl{0},{1}"); obj1.add("age","23{0},{1}"); obj.containsKey("name"); obj1.delete("name"); obj1.delete("age"); try { System.out.println(obj.getString("name")); System.out.println(obj.getString("age")); } catch (Exception e) { System.err.println("\u5173\u952E\u5B57\u4E0D\u518D\u6570\u636E\u4E2D (\u8C03\u7528containsKey)"); } } }
ResourceBuddle之疑惑,布布扣,bubuko.com
原文:http://blog.csdn.net/ctllin/article/details/20482385
评论(0)