-
java 修改list中的对象_Java中如何改变List里对象的属性值
2021-02-28 12:17:31随风17级2012-06-26 回答o.x=Integer.parseInt(z)追问://实现查询所有项目信息,查出来后把status字段类型转换 0=“已申报”1=“审核中”2=“已审核”public List listAll() {List list= projectinfoDao.findAll();...随风
17级
2012-06-26 回答
o.x=Integer.parseInt(z)
追问:
//实现查询所有项目信息,查出来后把status字段类型转换 0=“已申报”1=“审核中”2=“已审核”
public List listAll() {
List list= projectinfoDao.findAll();
Projectinfo p=list.get(1);
p.Status=Integer.parseInt("申报");
//p.setStatus(Integer.parseInt("申报"));
for(Projectinfo l:list){
System.out.println(l.getStatus());
}
return list;
}
报错了!!
log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
Hibernate: select projectinf0_.ID as ID0_, projectinf0_.PROJECT_NAME as PROJECT2_0_, projectinf0_.START_DATE as START3_0_, projectinf0_.END_DATE as END4_0_, projectinf0_.STATUS as STATUS0_ from SCOTT.PROJECTINFO projectinf0_
Exception in thread "main" java.lang.NumberFormatException: For input string: "申报"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:447)
at java.lang.Integer.parseInt(Integer.java:497)
at service.ProjectinfoServiceImpl.listAll(ProjectinfoServiceImpl.java:28)
at test.test2.main(test2.java:40)
追答:
Map map = new HashMap();
map.put("申报", 0);map.put("审核中", 1);
map.put("已审核", 2);
p.status = map.get("申报");
-
python类中为什么要初始化属性_python实例化类,数据混乱、串内容问题(可变类型属性的初始化)...
2020-12-01 21:02:16一般情况下,我们知道 在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象当把list和dict当参数传入函数时,强制为引用传值(即:在函数内部修改了对象,函数外部的...一般情况下,我们知道 在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象
当把list和dict当参数传入函数时,强制为引用传值(即:在函数内部修改了对象,函数外部的对象也会改变)
defupdate_remark(data):print(‘函数里修改了remak为:已修改‘)
data[‘remark‘] = ‘已修改‘
return data[‘remark‘]
dict1= {‘remark‘: ‘测试‘}print(‘外面里remark:‘, end=‘ ‘)print(dict1)
update_remark(dict1)print(‘外面里remark:‘, end=‘ ‘)print(dict1)
执行结果如下:
这个问题也不大,写函数的时候注意一下就好了。
问题是:一个类实例化出两个对象,修改各自对象的属性,数据还能被引用了??
测试代码如下:
classDemo:
name= ‘‘data={}def __init__(self):pass
defset_name(self, name):
self.name=namedefget_name(self):returnself.namedefset_data(self, key, value):
self.data[key]=valuedefget_data(self, key):return self.data[key] if key in self.data elseNoneif __name__ == ‘__main__‘:
obj1=Demo()
obj2=Demo()print(obj1)print(obj2)
obj1.set_name(‘实例1‘)
obj2.set_name(‘实例2‘)print(obj1.get_name())print(obj2.get_name())
obj1.set_data(‘remark‘, ‘测试‘)print(obj1.get_data(‘remark‘))print(obj2.get_data(‘remark‘))
执行结果如下:
这下就头大了,我只修改了obj1对象里的 data 属性,为何 obj2 里的 data 属性也跟着变了??
实例化对象之后,可变类型的属性居然还是引用传值的??
解决办法:不要直接在类的顶部里初始化属性,在构造方法里初始化属性才不会出错
类顶部的属性可以直接不写,在 __init__ 构造函数里用"self.属性名 = 属性值" 这种方式设置类的属性就可以了
注:强迫症一定要在类的顶部写属性的话,__init__ 里也还重新初始化一下
修改后的类如下:
classDemo:def __init__(self):
self.name= ‘‘self.data={}defset_name(self, name):
self.name=namedefget_name(self):returnself.namedefset_data(self, key, value):
self.data[key]=valuedefget_data(self, key):return self.data[key] if key in self.data elseNoneif __name__ == ‘__main__‘:
obj1=Demo()
obj2=Demo()print(obj1)print(obj2)
obj1.set_name(‘实例1‘)
obj2.set_name(‘实例2‘)print(obj1.get_name())print(obj2.get_name())
obj1.set_data(‘remark‘, ‘测试‘)print(obj1.get_data(‘remark‘))print(obj2.get_data(‘remark‘))
执行结果如下:
不知道是Python的bug还是本来就是这样设计的,总之:引以为戒!!
-
Spring笔记8--复杂对象(Map,Array...)属性的值注入
2021-01-29 15:38:02在寻常的业务开发中,我们不可能仅仅局限于那八大基础类型,不可能靠个String和class就恰饭 还有很多相对复杂的类型,如Array数组,Map映射,集合Set,List列表 下面我尽最大可能一个一个讲 (全讲是不现实的) 1、...我的所有spring笔记大集锦
Spring5入门知识整合(持续更新)在寻常的业务开发中,我们不可能仅仅局限于那八大基础类型,不可能靠个String和class就恰饭
还有很多相对复杂的类型,如Array数组,Map映射,集合Set,List列表
下面我尽最大可能一个一个讲(全讲是不现实的)1、环境准备
按照Spring7的模板进行一些修改,如果你还没看,拜托点一下下,花个一两分钟就可以的(狗头)
Spring笔记7–构造函数通过不同方式值注入
package com.ysj.study; import java.util.*; public class User { private String name; private int age; private List<String> books; private String[] friendName; private Set<String> backCards; private Map<String,String> games; private Properties myInfo; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public List<String> getBooks() { return books; } public void setBooks(List<String> books) { this.books = books; } public String[] getFriendName() { return friendName; } public void setFriendName(String[] friendName) { this.friendName = friendName; } public Set<String> getBackCards() { return backCards; } public void setBackCards(Set<String> backCards) { this.backCards = backCards; } public Map<String, String> getGames() { return games; } public void setGames(Map<String, String> games) { this.games = games; } public Properties getMyInfo() { return myInfo; } public void setMyInfo(Properties myInfo) { this.myInfo = myInfo; } @Override public String toString() { return "User{" + "name='" + name + '\'' + ", age=" + age + ", books=" + books + ", friendName=" + Arrays.toString(friendName) + ", backCards=" + backCards + ", games=" + games + ", myInfo=" + myInfo + '}'; } }
2、List类型的值注入
3、Array类型的值注入
4、Map类型的值注入
Map类型和其他类型有点区别,因为它是健值对,而且其底层实现和entry有关,在为Map对象赋值时,最好是加上key和value(但是HashMap是支持空健值的)5、Set类型的值注入
6、Properties类型的值注入
Properties是一种文件类型,后缀名就是类型名称
给该对象的name和age随便赋值一下,我赋值的是(YSJ和19)
输出结果如下
同时提醒一下:Spring是不支持Queue,Vector,Stack等一些数据类型支持的,这方面还是十分有约束的(关系不大)
这些干货相信课后拿几个例子测试测试就差不多可以掌握了
-
遍历泛型List,应该返回什么类型
2017-03-17 03:10:29// 把对象的属性数据封装到对象中 BeanUtils.setProperty(obj, field.getName(), tempStr); } } list.add(obj); } } catch (Exception e) { e.printStackTrace(); } finally { ... -
在 C# 中定义一个真正只读的 List
2020-03-10 10:59:14普通类型的数据完全可以达到预期的效果,但是在对象或者列表中,要想达到只读的效果,只用一个 readonly 关键字是不可以的。当你把一个 List 用 readonly 修饰,在其他类中仍然可以使用 Add,Remove 方法来改变它。...C# 中的 readonly 关键字表示类中的字段只允许在定义时候或者构造方法中初始化。普通类型的数据完全可以达到预期的效果,但是在对象或者列表中,要想达到只读的效果,只用一个 readonly 关键字是不可以的。当你把一个 List 用 readonly 修饰,在其他类中仍然可以使用 Add,Remove 方法来改变它。但是可能你想要的只读属性是:只有在当前类中修改这个列表的 item,才不想被其他类做任何修改!
下面这个示例就是用 readonly 关键字修饰的一个 List,它的内容项目仍然可以在其他类中添加或删除:
就算封装成只读属性,仍然可以在其他类中操作:
不过你可以将属性的类型改为 IEnumerable<T> ,这样就可以达到想要的效果。因为 IEnumerable<T> 类没有 Add, Remove 方法,List<T> 类继承 IEnumerable<T> 类,在 List<T> 类中新增的 Add, Remove 等方法:
如果你想创建一个完全只读的属性,就算在当前类中都不可以修改它的 item,你可以使用 ReadOnlyCollection<T> :
在 .NET 4.5 中,List<T> 继承了 IReadOnlyList<T> 和 IReadOnlyCollection<T>,给了我们一种更简单的写法,同样可以达到上述效果: -
遍历list类型应该返回什么
2017-03-15 06:13:48// 把对象的属性数据封装到对象中 BeanUtils.setProperty(obj, field.getName(), tempStr); } } list.add(obj); } } catch (Exception e) { e.printStackTrace(); } ... -
阶段3 1.Mybatis_05.使用Mybatis完成CRUD_7 Mybatis中参数的深入-使用实体类的包装对象作为查询条件...
2019-10-02 09:43:42pojo对象就是实体类 综合查询-实体类包装起来做查询 ...提供一个User对象属性,并...修改dao接口中的返回类型为List<User> id的名称改掉。 运行效果 转载于:https://www.cnblogs.com/... -
Java 用面向对象的方法求集合的交集,差集,并集
2018-12-23 16:30:17在求集合的交集,差集,并集时,会修改成员属性的这两个集合的对象。即,若是求交集,使用的是list1.retainAll(list2)方法,此时,集合1中只剩下与集合2 相同的数据,当再求差集时,就会差生错误 消除错误:在每一... -
一切皆对象
2019-09-30 09:05:06一切皆对象 python中,字典,列表,字符串...都是对象 ...#对象调用对象的绑定方法,修改对象自己 list.append(l1,9) print(l1) print(type(11)) class Student: #变量表示属性 school='oldboy' ... -
Geotools 创建shape文件报错,无法设置中文属性
2019-07-05 19:26:39//添加属性类型 tb.add("图斑编码", String.class); tb.add("措施代码", String.class); tb.add("措施名称", String.class); tb.add("利用现状", String.class); tb.add("措施数量", Double.class)... -
Redis数据存储类型的选择
2020-07-31 14:58:41hash: 通常来存储Java对象 hset(key,feild,value),便于对单个属性的修改 set: 通常用在,获取两个结果集的交集,补集,差集。 zSet: 通常用来做排序。 hash:增删改减少了IO次数,String:查询减少了IO次数 .... -
List使用总结
2012-11-27 15:29:51在使用过程中,获取其中某个对象,并对对象的属性值进行修改,虽然没有将修改后对象add回去,然而list中的该对象值还是修改了。以前没注意过这个问题现在做个总结: 理解1: List属于java集合,Java集合中不能... -
java 不可变对象 final Collections guava 简单样例
2019-09-27 16:58:00java的final关键字大家都了解,但是final修饰的如果是引用类型,那么不可修改的其实只是重新赋值,是可以修改引用对象中的属性值的。 那如何来构建一个不可修改的list、map、set等这些对象呢,可以通过jdk自带的... -
关于Struts 2的类型转换
2009-08-23 21:51:51使用Struts 2的后,不清楚Struts是否能直接将Testtemplate对象赋值到Testcolumn对象的属性中。 我写的标签存在一定的错误,如果我想实现用户在前台一选择栏目,传到后台的Testcolumn就已经将其的Testtemplate赋值好... -
redis五大基本类型,还有实用三种的特点及使用场景,
2020-07-05 21:32:45适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回去) 适用场景: hash变更的数据 user name age,尤其是是用户信息之类的,... -
Redis 五种数据类型
2020-05-27 16:30:14Redis支持五种数据类型 String(字符串 Hash(哈希) ...适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回 -
python模块collections中namedtuple()的理解
2018-08-04 09:52:18namedtuple创建一个和tuple类似的对象,而且对象拥有可访问的属性。 Python中存储系列数据,比较常见的数据类型有list,除此之外,还有tuple数据类型。 相比与list,tuple中的元素不可修改,在映射中可以当键使用。... -
泛型集合的遍历,返回什么类型
2017-03-16 05:47:24// 把对象的属性数据封装到对象中 BeanUtils.setProperty(obj, field.getName(), tempStr); } } list.add(obj); } } catch (Exception e) { e.printStackTrace(); ... -
sql怎么把json直接转成list_数据库JSON怎么改?一个SQL函数让你的操作瞬间高大上...
2021-01-25 13:28:12网图侵删场景描述不知道各位小伙伴有没有遇到过这样的情况:mysql表中有一个字段res_...需要重新修改这个json对象的属性值,于是,你就不得不将整个json对象,也就是res_content字段重新替换了一遍。=。= ||| 一... -
被替换的项目不是替换值长度的倍数_DAY6-step1 Python List:列表推导,添加,排序,长度,反转...
2020-11-14 02:41:07列表的确切含义是一个包含不同Python对象的容器,该对象可能是整数,单词,值等。它等效于其他编程语言中的数组。 它由方括号表示(这是将其与元组(用圆括号分隔的元组)区分开的属性之一)。 它也是可变的,即可以修改... -
【转】黑马程序员_WPF基础属性、控件和语法
2019-10-05 10:03:40——WPF中所有事件响应方法第一个参数都是sender,代表触发事件的控件对象,是object类型,需要类型转换使用。 ——应用:多个按钮的Click共享一个事件处理方法 2、集合List<T> ——有时候不能预先确定... -
泛型List排序(利用反射)
2014-11-15 18:41:00在最近一个项目中,有需求要对页面中所有的gridview添加排序功能。由于gridview的数据源绑定的是一个集合类List,而不是DataTable,所以无法使用...由于是要按照某个不固定的属性对List内的对象进行排序,所以修改类... -
Axis2 不能传递Map等复杂数据类型解决方案 .
2012-08-01 15:09:16将所有的复杂类型转换为自定义对象和对象数组,如原本返回List 修改为返回Person[] Map转换为MyObject[] ,包含两个字符串类型属性的自定义类型(MyObject)的数组,然后用XMLBean方式生成客户端 这个是我在项目中... -
Webservice(基于Axis2-1.4.1)复杂数据类型解决方案
2009-11-27 10:53:00将所有的复杂类型转换为自定义对象和对象数组,如原本返回List 修改为返回Person[]Map转换为MyObject[] ,包含两个字符串类型属性的自定义类型(MyObject)的数组,然后用XMLBean方式生成客户端 这个是我在项目中使用... -
VC之美化界面篇本文专题讨论VC中的界面美化,适用于具有中等VC水平的读者。读者最好具有以下VC基础:
2009-06-17 10:17:32②在普通窗口中,直接创建一个CXPButton类对象,然后在OnCreate()中调用CXPButton的Create方法; 以下的章节将综合地使用以上的方法,请读者朋友留心观察。 3.2 使用MFC类的既有函数 在界面美化的专题中,MFC也... -
求JQ或JS仿京东淘宝属性规格SKU样式
2016-08-13 13:27:16把这个修改成属性值可以在input-text区自定义,删除自定义的值后自动恢复初始属性值。如图所示功能: ``` <!DOCTYPE html> ... -
反射的使用与定义
2019-07-16 21:02:002.反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。 3.反射使用场景 有时不知道具体的类型,可以通过dll去得到类的对象 某些特殊...
-
MySQL 高可用工具 DRBD 实战部署详解
-
Python爬虫零基础最全入门课程
-
51单片机交通灯设计.rar
-
用微服务spring cloud架构打造物联网云平台
-
(2021年2月18日整理)自媒体全套教程+全套工具(带操作教程)+原创实操教程+N个素材网站+赠全套副业实操课程
-
Editor.md图片跨域问题
-
jdk-9.0.4_Wind-x64.zip
-
LL(1),LR(0),SLR(1)文法分析器
-
上海大学《高等代数》2000到2009历年考研真题.pdf
-
基于离散余弦变换(DCT)傅里叶变换(DFT)小波变换(DWT)的彩色图像数字水印的嵌入、提取简介及MATLAB实现
-
python-3.86.zip
-
【Python-随到随学】 FLask第一周
-
龙芯生态应用开发基础:C语言精要
-
投标方法论
-
linux c MD5加密 程序源代码 和 测试程序
-
【硬核】一线Python程序员实战经验分享(1)
-
Makefile语法进阶
-
深究字符编码的奥秘,与乱码说再见
-
设计模式——享元模式
-
天池语义分割task04