nameservice.java

来自「java web小程序包」· Java 代码 · 共 68 行

JAVA
68
字号
package autocomplete.logic;

import java.util.ArrayList;
import java.util.List;

/**
 * 
 * <p>
 * Title: NameService.java
 * </p>
 * <p>
 * Description:
 * </p>
 * <p>
 * Copyright:OnewaveInc Copyright (c) 2007
 * </p>
 * <p>
 * Company: OnewaveInc
 * </p>
 * 
 * @author Zhengrw
 * @version 3.0
 */
public class NameService {

	private List<String> names;

	private NameService() {
		names = new ArrayList<String>();
		names.add("Abe");
		names.add("Abel");
		names.add("be");
		names.add("bde");
	}

	private NameService(List<String> list_of_names) {
		this.names = list_of_names;
	}

	public static NameService getInstance(List<String> list_of_names) {
		return new NameService(list_of_names);
	}

	public List<String> findNames(String prefix) {
		String prefix_upper = prefix.toUpperCase();
		List<String> matches = new ArrayList<String>();
		for (String name : names) {
			if (name.toUpperCase().startsWith(prefix_upper)) {
				matches.add(name);
			}
		}
		return matches;
	}

	private static NameService service;
	//锁
	private static Object lock = new Object();

	public static NameService getInstance() {
		synchronized (lock) {
			if (service == null) {
				service = new NameService();
			}
		}
		return service;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?