`
Jeff88
  • 浏览: 4550 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Collections.singletonList设置为不可改变对象

 
阅读更多
package Collections;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;



class People {
	
	private String neme  ;
	
	private int age ;
	
	private List<Integer>  tt ;

	public People() {
		super();
		// TODO Auto-generated constructor stub
	}

	public People(String neme, int age) {
		super();
		this.neme = neme;
		this.age = age;
	}

	
	public List<Integer> getTt() {
		return tt;
	}

	public void setTt(List<Integer> tt) {
		this.tt = tt;
	}

	public String getNeme() {
		return neme;
	}

	public void setNeme(String neme) {
		this.neme = neme;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
	
	
	
}


public class SingletonList {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		/*List<People> pLis = new ArrayList<People>() ;
		People pp ;
		for (int i = 0; i < 3; i ++ ) {
			pp = new People() ;
			pp.setNeme("man"+i);
			pp.setAge(20 + i);
			pLis.add(pp) ;
		}
		
		
		
		int[] array = {23,234,212,11};
		pLis = Collections.singletonList(new People("不可变列表,不能再进行改变",27)) ;
		
//		这里如果再对pList进行操作,则会报UnsupportedOperationException
		pLis.add(new People("三", 20));
		
		for (People p : pLis) {
			System.out.println(p.getNeme());
		}*/
		
		
		People pp = new People() ;
		
//		虽然设置的Tt对象是不可变的对象,但是pp对象继续可以设置,看项目中有的同事这样用,感觉怪怪的
		pp.setTt(Collections.singletonList(333));
		
		
		List<Integer> lis = new ArrayList<Integer>() ;
		for (int i = 0; i < 3; i ++) {
			lis.add(new Integer(i));
		}
		
		pp.setTt(lis);
		
		for (Integer ii : pp.getTt()) {
			System.out.println(ii);
		}
		
		
		
	}

}

 

collection工具类中singleton的用法有三个:

 

 

 

 

 

分享到:
评论

相关推荐

    commons-collections-3.2.1.jar

    2. **装饰器模式**:允许在不改变原始集合接口的情况下,添加新的行为或改变已有行为。例如,可以使用`Unmodifiable`装饰器来使集合不可修改,或者使用`Lazy`装饰器来实现延迟加载。 3. **转换器**:提供了将一种...

    kotlinx.collections.immutable,Kotlin的不可变集合原型.zip

    `kotlinx.collections.immutable`库是Kotlin生态系统的一部分,由JetBrains团队维护,与Kotlin标准库互补,为开发者提供了丰富的不可变集合类型和操作。 首先,我们来了解什么是不可变集合。不可变集合不允许添加、...

    commons-collections.jar

    commons-collections-20040616.jar, ...commons-collections.jar, commons-collections3-3.2.1.jar, commons-collections4-4.1-javadoc.jar, commons-collections4-4.1-src.zip, commons-collections4-4.1.jar

    java List 排序 Collections.sort

    `Collections.sort()`通常能提供很好的性能,但如果需要对大量不可变对象或已排序的列表进行排序,使用`TreeSet`或`LinkedHashSet`等集合类型可能会更高效,因为它们在底层实现了红黑树结构,插入和查找操作的时间...

    iesi.collections.dll

    同时,为了确保程序的正常运行,还需要关注iesi.collections.dll与项目中其他依赖库的版本匹配问题,避免因版本不兼容导致的运行时错误。 总的来说,iesi.collections.dll是C# .Net集合类库的重要组成部分,其不同...

    kotlinx.collections.immutable, Kotlin的不可变集合 Prototype.zip

    kotlinx.collections.immutable, Kotlin的不可变集合 Prototype Kotlin的不可变集合库 Kotlin的不可变集合接口和实现 Prototype 。有关详细信息,请参阅建议列表。Prototype实现基于 pcollections ( 版权 2015的作者...

    Collections.synchronizedList

    标题中的"Collections.synchronizedList"是指Java集合框架中的一个静态工厂方法,用于将任何List转换为线程安全的List。这个方法是Java中实现多线程环境下的集合操作的重要工具,确保在并发访问时数据的一致性和完整...

    列举系统中的环境变量,listView1,System.Collections.DictionaryEntry EnValue in Environment.GetEnvironmentVariables()C#源代码

    列举系统中的环境变量,listView1,System.Collections.DictionaryEntry EnValue in Environment.GetEnvironmentVariables()C#源代码 用VisualStudio2008创建

    Iesi.Collections.dll

    Iesi.Collections.dll

    JSF开发包:commons-beanutils.jar+commons-collections.jar+commons-digester.jar+jsf-api.jar+jsf-impl.jar+jstl.jar+standard.jar

    JSF开发所必需包:花了很长时间才收集好,很费时,现已收集好,何不分享给大家,让大家节省时间做点有意义的事情呢?...commons-collections.jar commons-digester.jar jsf-api.jar jsf-impl.jar jstl.jar standard.jar

    金陵科技学院软件院大二上Java高级1215Collections.docx

    在示例中,`Collections.swap(list, 2, 4)`将下标为2的元素"123"与下标为4的元素"xyz"互换,结果列表为"123", "123", "xyz", "abc", "abc"。 5. **`Collections.replaceAll(List&lt;T&gt; list, T oldVal, T newVal)`**:...

    java中Collections.sort排序详解

    Java中Collections.sort排序详解 Java中的Collections.sort排序是Java.util.Collections类中的一个静态方法,用于对列表进行排序。下面将详细介绍Collections.sort排序的使用和实现机制。 Collections.sort()方法...

    javaclooections类.docx

    - `Collections.singletonList(Object o)`: 返回包含指定元素的不可变`List`。 - `Collections.singletonMap(K key, V value)`: 返回包含指定键值对的不可变`Map`。 - `Collections.singleton(E o)`: 返回包含指定...

    collections-generic-4.01_and_looks-2.1.4

    该文件里包含两个.jar包: collections-generic-4.01.jar和looks-2.1.4.jar, 引入collections-generic-4.01.jar: 右击工程--》Build path ——》Add External JAR--&gt;选中collections-generic-4.01.jar --》OK 在源...

    NHibernate3.2及Iesi.Collections的dll文件

    2. **对象关系映射**:ORM是NHibernate的核心特性,它将数据库中的表映射为类,记录映射为对象,通过对象的操作来间接完成对数据库的操作,避免了直接编写SQL语句的繁琐工作。 3. **配置**:NHibernate通过配置文件...

Global site tag (gtag.js) - Google Analytics