`
Blackbaby
  • 浏览: 185006 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

收集的工具方法

    博客分类:
  • java
阅读更多
package org.codehaus.jackson.util;

import java.util.Map;
import java.util.LinkedHashMap;

/**
 * Singleton class that adds a simple first-level cache in front of
 * regular String.intern() functionality. This is done as a minor
 * performance optimization, to avoid calling native intern() method
 * in cases where same String is being interned multiple times.
 *<p>
 * Note: that this class extends {@link LinkedHashMap} is an implementation
 * detail -- no code should ever directly call Map methods.
 */
@SuppressWarnings("serial")
public final class InternCache
    extends LinkedHashMap<String,String>
{
    /**
     * Size to use is somewhat arbitrary, so let's choose something that's
     * neither too small (low hit ratio) nor too large (waste of memory)
     */
    private final static int MAX_ENTRIES = 192;

    public final static InternCache instance = new InternCache();

    private InternCache() {
        super(MAX_ENTRIES, 0.8f, true);
    }

    @Override
    protected boolean removeEldestEntry(Map.Entry<String,String> eldest)
    {
        return size() > MAX_ENTRIES;
    }

    public synchronized String intern(String input)
    {
        String result = get(input);
        if (result == null) {
            result = input.intern();
            put(result, result);
        }
        return result;
    }


}

 

  

import java.util.HashMap;
import java.util.Map;

public class URLParamAnalysis {
	private Map<String, String> paramMap = new HashMap<String, String>();

	public void analysis(String url) {
		paramMap.clear();
		if (!"".equals(url)) {
			url = url.substring(url.indexOf('?') + 1);
			String paramaters[] = url.split("&");
			for (String param : paramaters) {
				String values[] = param.split("=");
				paramMap.put(values[0], values[1]);
			}
		}
	}

	public String getParam(String name) {
		return paramMap.get(name);
	}

	public static void main(String[] args) {
		String test = "name=helddlo&id=100";
		URLParamAnalysis urlAnalysis = new URLParamAnalysis();
		urlAnalysis.analysis(test);
		System.out.println("name = " + urlAnalysis.getParam("name"));
		System.out.println("id = " + urlAnalysis.getParam("id"));
	}

}

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics