黑马程序员---单例设计模式List集合
来源:互联网 发布:印刷调色软件 编辑:程序博客网 时间:2024/05/18 07:39
单例设计模式
饿汉式:类加载时方法区就存在该对象。
class Single{private static Single s=new Single();private Single(){}//私有化构造方法public static Single getSingle(){return s;}public void out(){System.out.println(“你好啊”);}}
懒汉式:类加载时方法区是不存在该对象的
class Single{private static Single s=null;private Single(){}public static Single getSingle(){ //调用该方法是才建立该对象if(s=null){s=new Single();}return s;}public void out(){System.out.println(“你好啊”);}}class Test(){public static void main(String[] args){Single sl=Single.getSingle(); //getSingle 方法返回的是一个对象,sl接收Sl.out();}}
List 集合
</pre><pre name="code" class="java">package JiheDemo;/*Collection|--List:元素是有序的,远远可以重复,因为该集合体系有索引|--Set:元素是无序的,袁旭不可以重复。List:特有方法,凡是可以操作角标的方法都是该体系有的方法。增add(index,element);addAll(index,Collection);删remove(index);改set(index,element);查 get(index); subList(from,to); listIterator(); List 集合中特有的迭代器,ListIterator 是 Iterator 的子接口。 迭代时,不可以通过集合对象的方法操作集合中的元素。 会发生ConcurrentModificationException 并发异常。 迭代时,只能用迭代器的方法操作元素,但Iterator 方法有限,如想要其他操作,修改等..,需要使用子接口,ListIterator 该接口只能通过List集合的listIterator 方法获取。 */public class ListDemo {public static void sop(Object obj){System.out.println(obj);}public static void test(){ArrayList al=new ArrayList();al.add("zhangsan1");al.add("zhangsan2");al.add("zhangsan3");al.add("zhangsan4");sop("原集合:"+al);//获取所有元素 循环遍历for(int i=0;i<al.size();i++){System.out.println("for 循环获取的所有 al("+i+")--"+al.get(i));}Iterator it=al.iterator();while(it.hasNext()){System.out.println("Iterator 获取的所有元素"+it.next());}//在指定位置添加元素al.add(1,"李四");sop(al);//删除指定位置元素al.remove(0);sop(al);//修改元素al.set(0, "王五");sop(al);//通过角标获取元素sop(al.get(0));//通过内容获取存放的角标位sop("indexof输出="+al.indexOf("zhangsan2"));//获取两个对应角标的元素,不包含1,不包含3List ls=al.subList(1, 3);sop("ls="+ls);}public static void main(String[] args) {test();}}public class ArreaListDemo { public static void main(String[] args) { //ArrayList 集合的练习 ArrayList al=new ArrayList(); //添加元素 /* //输出集合中所有内容 sop("原集合"+al); //删除元素 al.remove("zhangsan"); sop("删除后的集合"+al); //判断某一个数据是否存在 sop("判断是否存在该元素"+al.contains("lisi")); sop("集合是否为空"+al.isEmpty()); //清楚所有元素 al.clear(); sop("清楚所有元素"+al); */ /*取交集,删除交集 ArrayList al1=new ArrayList(); //添加元素 al1.add("zhangsan"); al1.add("lisi"); al1.add("wangwu"); al1.add("dongge"); ArrayList al2=new ArrayList(); //添加元素 al2.add("改变该值实验retainAll 和 removeAll 的区别"); al2.add("lisi"); al2.add("wangwu"); al2.add("dongge"); al1.retainAll(al2); //取交集,理解,取出两个集合中相同的数据 //al1.removeAll(al2); //删除交集,理解,删除两个集合中相同的数据 sop("al1"+al1); sop("al2"+al2); */ //ArrayList al=new ArrayList(); //添加元素 al.add("zhangsan"); al.add("lisi"); al.add("wangwu"); al.add("dongge"); sop("原集合:"+al); //该接口可以在遍历中对元素进行操作 ListIterator it=al.listIterator();//只有List能使用,该迭代器继承于Iterator,该方法可以进行增删改查 //Iterator it = al.iterator(); //获取迭代器,用于获取集合中的元素,该方法有局限性,不能进行添加 //取出单个元素 //sop(it.next()); //sop(it.next()); //sop(it.next()); //sop(it.next()); while(it.hasNext()){ Object o=it.next(); if(o.equals("zhangsan")){ //ListIterator 常用方法↓ it.add("这是添加的"); //删除remove();修改set(arg0);添加add("111"); } } sop(al); while(it.hasPrevious()){ //hasPrevious()方法逆向取值 sop(it.previous()); } } public static void sop(Object obj){ System.out.println(obj); }}
0 0
- 黑马程序员---单例设计模式List集合
- 黑马程序员_单例设计模式
- 黑马程序员_单例设计模式
- 黑马程序员 单例设计模式
- 黑马程序员_单例设计模式
- 黑马程序员_单例设计模式
- 黑马程序员-单例设计模式
- 黑马程序员---单例设计模式
- 黑马程序员:单例设计模式
- 黑马程序员-单例设计模式
- 16.黑马程序员-设计模式-单例
- 黑马程序员_单例设计模式
- 《黑马程序员》单例设计模式
- 黑马程序员_java 单例设计模式
- 黑马程序员--单例设计模式
- 黑马程序员---单例设计模式【java】
- 黑马程序员-单例设计模式
- 黑马程序员—单例设计模式
- 微乐注册邀请码,微乐怎么玩
- 【Python】Python取top N相关的模块:heapq模块
- socket阻塞与非阻塞,同步与异步、I/O模型
- ORA-28547: connection to server failed, probable Oracle Net admin error解决办法
- <C/C++>C语言字节对齐问题总结
- 黑马程序员---单例设计模式List集合
- poj 3070 Fibonacci(矩阵快速幂)
- iOS 应用2.0版怎么做
- 汉诺塔
- Android 特殊符号的转码大全
- oracle安装过程之 删除用户oracle
- 一种大气简单的Web管理(陈列)版面设计
- cocos2d-x 多层 触摸 已解决
- DropboxSDK: unable to link; app isn't registered for correct URL scheme