string - 特定数字的示例搜索名称
问题描述
例子
我想将 SDK 编号与一个值进行比较,并显示该值的名称示例 sdk 25 = nougat
字符串 sdks = Build.VERSION.SDK;
int Alpha = 1;
int Beta = 2;
int CupCake = 3;
int Donut = 4;
int Eclair= 5-7;
int Froyo = 8;
int GingerBread = 9-10;
int HoneyComb = 11-13;
int IceCreamSandwich = 14-15;
int JellyBean = 16-18;
int KitKat = 19-20;
int Lollipop = 21-22;
int MarshMellow = 23;
int Nougat = 24-25;
int Oreo = 26-27;
int Pie = 28;
resultview.setText(sdks);
解决方案
我认为 Map 解决方案的实施很简单,因为它的范围很小
public static void main(String []args){
Map<Integer,String> sdkMap = new HashMap<Integer,String>();
//populate other fields similarly
HelloWorld.populateRange("24-25","Nougat",sdkMap);
System.out.println(sdkMap.get(24));
}
public static void populateRange(String range,String name, Map<Integer,String> sdkMap){
String[] splitNumbers = range.split("-");
int low = Integer.parseInt(splitNumbers[0]);
int high = Integer.parseInt(splitNumbers[1]);
for(int i=low;i<=high;i++){
sdkMap.put(i,name);
}
}
推荐阅读
- ios - 在 Xamarin iOS 中的远程通知的“默认用户操作”上推送视图控制器
- neo4j - 删除关系,然后添加回节点 neo4j
- excel - 在 Excel 中分析 66k 行
- asp.net - 在 localhost 上测试 WebAPI,但注意解析地址
- javascript - webpack libraryTarget 'umd' 应该与 ES6 模块一起使用吗?
- php - 在一页而不是两页中包含 PHP 代码
- c# - 如何使用 Autofac 从控制台应用程序使用 WCF 服务?
- r - 当变量嵌入空格时如何在 R 中使用重新公式化
- javascript - Javascript:过滤数组中的元素部分
- rust - 检查 Rust 中所有向量的长度是否相同