CVTE2016校园招聘实习笔试编程题之一
来源:互联网 发布:淘宝货品拒收后怎么 编辑:程序博客网 时间:2024/05/22 20:29
17号晚上做了CVTE的在线笔试题,倒数第二道题知道应该是用JAVA的反射来完成,但是忘记了语法,题目大概是这样的:
将Map中的值封装到targetVo对象中,targetVo对应的类如下:
class TargetVo{private String name;private int age;private boolean isMarried;//...@Overridepublic String toString() {return "TargetVo [name=" + name + ", age=" + age + ", isMarried=" + isMarried + "]";}}
然后给出了大致的框架:public class BeanTest {public TargetVo getTargetVo(Map<String, Object> map) {TargetVo targetVo = new TargetVo();for (String key : map.keySet()) {//在这里填写代码}return targetVo;}}知道反射却忘记语法的我眼泪掉下来于是我很无奈是这么写的:
public TargetVo getTargetVo(Map<String,Object> map){TargetVo targetVo = new TargetVo();for (String key : map.keySet()) {if("name".equals(key)){targetVo.setName(map.get(key));}else if("age".equals(key)){targetVo.setAge(map.get(key));}// ...}return targetVo;}
交卷后不甘心,复习了下,我想差不多是这么写的吧,大家认为呢public static TargetVo getTargetVo(Map<String, Object> map) throws Exception {//反射会有异常需要处理,为了简单直接抛出去了TargetVo targetVo = new TargetVo();Class<? extends TargetVo> targetVoClass = targetVo.getClass();Field[] fields = targetVoClass.getDeclaredFields();for (String key : map.keySet()) {for (Field field : fields) {if (field.getName().equals(key)) {field.setAccessible(true);field.set(targetVo, map.get(key));}}}return targetVo;}
0 0
- CVTE2016校园招聘实习笔试编程题之一
- 搜狐校园实习招聘笔试题
- 2014腾讯校园招聘实习笔试题
- 微软2014校园招聘笔试编程题
- 2016校园招聘笔试编程题_1
- 京东2015校园招聘笔试编程题
- 校园招聘笔试题
- 2017校园招聘腾讯笔试题 在线编程题
- 2012年小米校园招聘实习生笔试编程题
- 2012年奇虎360校园招聘实习生笔试编程题
- 360公司 2016校园招聘在线笔试编程题
- 2017微软秋季校园招聘在线编程笔试(第二题)
- 2017微软秋季校园招聘在线编程笔试(第三题)
- 校园招聘笔试编程题:文本嗅探
- 奇虎360 2015校园招聘笔试编程题
- 校园招聘-2017携程秋招后台开发笔试编程题
- sybase2009校园招聘笔试题
- 淘宝校园招聘笔试题
- [Java代码] Java ArrayList源码分析
- ALV输出无法指定STATUS
- android 基于树结构的任意层级列表
- 智能售货机无线通信方案
- Swift可选绑定、断言
- CVTE2016校园招聘实习笔试编程题之一
- B树
- hadoop知识结构
- Windows端Drozer使用(Android APP应用安全评估框架)
- 使用pyqt自动登录5sing.com
- Mongodb命令
- jQuery append()、prepend()和 after() 、before() 方法向元素插入或添加内容
- Android 混淆文件实例
- poi导出下拉列表,进行数据有效性约束