cn.renlm.plugins.Common.IntToEnum Maven / Gradle / Ivy
/*
* Copyright (c) 2020 Renlm
* MyUtil is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
* http://license.coscl.org.cn/MulanPSL2
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
*/
package cn.renlm.plugins.Common;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 枚举对象
*
* @author RenLiMing(任黎明)
*
* @param
*/
public class IntToEnum & IntToEnum.IntValue> {
public static interface IntValue {
int value();
}
private final Map map;
public IntToEnum(final T[] enumValues) {
map = new LinkedHashMap<>();
for (T enumValue : enumValues) {
map.put(enumValue.value(), enumValue);
}
}
public T valueToEnum(final int i) {
return this.map.get(i);
}
}