package com.lee.list;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import com.lee.model.Person;
public class ListAddChangeList {
/*[com.lee.model.Person@2510bb7, com.lee.model.Person@16d81c91]
[com.lee.model.Person@2510bb7, com.lee.model.Person@16d81c91]
[com.lee.model.Person@2510bb7, com.lee.model.Person@16d81c91]
[null, null]*/
//实验证明,list保存的是p1 p2 指向的内存地址,这块内存地址的值可以通过p1 p2去修改里边的值
//但是改变p1 p2的指向并不能改变这块内存地址的值,所以当p1 = null时
//list保存的p1所指向的内存地址还是不会改变,还是会有值
@Test
public void t1(){
List<Person> list = new ArrayList<Person>();
Person p1 = new Person("n1",11);
Person p2 = new Person("n2", 22);
list.add(p1);
list.add(p2);
// p1 = null;
// p2 = null;
//System.out.println(list.toString());
print(list);
p1.setAge(15);
List<Person> list2 = new ArrayList<Person>();
list2.add(list.get(0));
list2.add(list.get(1));
list.set(0, null);
list.set(1, null);
//System.out.println(list2.toString());
p1.setAge(166);
p1 = null;
p2 = null;
System.out.println("****p1.setAge(16)****");
print(list2);
// p1 = null;
// p2 = null;
p1.setAge(17);
System.out.println("***********");
print(list2);
//System.out.println(list2.toString());
// list2.set(0, null);
// list2.set(1, null);
//System.out.println(list2.toString());
p1.setAge(17);
print(list2);
}
private void print(List<Person> list) {
for(Person person : list){
System.out.print(person.getName() + " " + person.getAge() + " ");
}
if(list.size() == 0){
System.out.println("empty");
}
System.out.println();
}
}
分享到:
相关推荐
在C#编程中,将一个`List<T>`对象转换为BMP图片并保存到本地是一项常见的数据可视化任务,尤其在处理大量数据时。这个过程涉及到多个步骤,包括数据的渲染、图像创建以及文件保存。以下将详细介绍这个过程,以及相关...
要将ListControl中的数据导出并保存为Excel文件,我们需要实现一个转换过程。这个过程涉及从ListControl读取数据,然后用适当的方式写入Excel文件。Excel文件通常使用Microsoft Office Interop库来处理,但这需要在...
- 当读取List时,从注册表值中获取字符串或字节数组,然后反序列化回原来的List对象。这同样需要使用到序列化类的反序列化方法。 6. **删除List数据**: - 删除List数据通常涉及到删除包含该List的整个注册表项。...
将这些值填充到CListCtrl对象中,调用InsertItem、SetItemText等函数来创建新的列表项并设置其文本。 导出ListControl数据到Excel时,你需要创建一个新的Excel工作簿,添加工作表,然后遍历ListControl中的所有项和...
在JPA中,保存一个对象需要使用仓储接口,例如StudentRepo: ```java @Repository public interface StudentRepo extends JpaRepository, String> {} ``` 然后,我们可以使用StudentRepo的save()方法来保存一个...
3. **设置单元格值**:遍历ListCtrl中的每一项和每一列,获取数据并写入Excel的相应单元格。例如,`worksheet.Cells[rowIndex, columnIndex].Value = listCtrl.GetItemText(itemIndex, subItemIndex)`。 4. **格式...
当在遍历 sequence 时,会将遍历变量的值保存到 item 中。 例如:<#list userList as user> …</#list>,userList 中封装了很多个 User 对象,我们在遍历 userList 时,会将遍历的 User 对象的值,保存到上述的 ...
标题"Listbox中保存对象"指的是如何在`ListBox`中存储并处理自定义对象,而不是仅仅显示字符串数据。 `ListBox`控件默认只显示字符串,但通过一些技巧,我们可以将其扩展以存储自定义类型的数据。这种做法通常涉及...
在Java中,可以通过FileWriter、BufferedWriter等类将list转换为字符串(例如用逗号分隔值,CSV格式),然后写入到文本文件中。读取时,可以使用FileReader和BufferedReader反向操作,将文本数据解析回列表。这种...
`allCheckboxBeans`通常是从数据库中查询得到的一组`CheckboxBean`对象列表,而`checkboxBeans`则是用户之前保存的已选中的`CheckboxBean`对象列表。 在JSP页面中,我们使用`<s:checkboxlist>`标签来渲染复选框列表...
- **数据类型处理**:listctrl中的数据可能包含不同类型的值,如字符串、数字、日期等。在导出时,需要正确转换为Excel能识别的格式。 - **图片和自定义对象**:listctrl有时会包含图像或其他复杂对象,导出时可能...
在Android开发中,SharedPreferences是常用于轻量级数据存储的一种机制,它主要用于保存应用程序的简单配置数据,如布尔值、整数、浮点数、字符串等。然而,SharedPreferences本身并不直接支持保存List类型的数据。...
6. **数据保存**:当用户完成编辑并关闭下拉列表时,需要将选定的值保存到适当的数据结构或数据库中,以供后续使用。这通常涉及到监听WM_COMMAND消息,识别用户的编辑结束动作,并调用适当的数据存储函数。 7. **...
这段代码实现了从 `CheckBoxList` 控件获取选中项,并将这些项的值保存到数据库的功能。需要注意的是,在实际生产环境中,为了提高代码的安全性和健壮性,建议使用参数化查询来代替字符串拼接的方式,以防止 SQL ...
"绑定List"通常指的是将一个List对象(例如,List)中的数据绑定到GridView,以便在网页上展示。这可以通过在代码-behind文件中设置GridView的DataSource属性,并调用DataBind()方法来实现。例如: ```csharp List...
在进行web项目开发的时候,有时候需要把一些前端的数组进行去重处理,得到一个去重后的数据,然后在进行相关的操作
总结,实现SwiftUI 1.0中的列表(List)滚动到指定位置,主要步骤包括:创建一个环境对象来存储滚动目标,监听环境对象的变化并在`onAppear`回调中调用`List.scrollTo`方法。这种方法既简单又灵活,可以适应各种滚动...
本教程将详细解释如何在MFC环境下将ListCtrl控件中的数据导出到Excel表格。 首先,我们需要理解MFC ListCtrl的基本操作。ListCtrl是MFC对Windows API中的ListView控件的封装,它允许我们以列表形式展示数据,包括多...
2. 创建SortedList对象,用于存储Excel数据,键可以是唯一的标识符(如行号或唯一字段),值可以是包含该行所有数据的对象数组。 3. 使用VSTO打开第一个Excel文件,遍历每个工作表,读取每一行的数据,将其添加到...