#自己的ArrayList实现类相关的一些笔记
今天自学了集合框架中ArrayList实现类的一些方法和运用,记录在帖子里,方便以后查看复习。现在是一个java小白,笔记中肯定有很多有问题的地方,希望吧里的大佬们看到了帮小弟指出来一下,帮助小弟去进步。(手动)(-鞠躬-抱拳~~)
下面就放一下代码和笔记 时间紧迫就直接复制粘贴了
package Day06;
import java.util.ArrayList;
public class GjNews {
public static void main(String[] args) {
/*此题涉及的知识点:
1、Collection接口下List接口的ArrayList类的运用
2、以及ArryList类的 a> .add(obj)---增加元素对象的方法
b> .add(int index,obj)---在下标Index处增加元素对象的方法
c> .size()---获取ArrayList集合的长度的方法
d> .get(obj)---得到ArrayList集合中对象内容的方法
此处注意 该方法的返回值类型是一个obj所以想要打印出里面的内容的话需要强制类型转化(估计自己过一段时间又会忘记)
e> .set(int index,obj)---把下标为index的地方的对象替换成obj。
f> .contains(obj)---查找集合列表中是否存在对象obj 返回值是boolean类型 如果存在返回一个---ture 反之返回一个false
此处注意 obj必须是存在的对象 否者报错
g> .remove(obj)---删除列表中的对象obj 返回值是boolean类型 如果对象存列表中则删除返回一个---ture 不存在列表中则返回一个false
g2> .remove(int index)---删除指定列表中指定位置Index的元素对象
与.remove()还有一个不同的地方在于 它返回值得类型是obj,是一个对象。 会把删除掉的那个对象返回给你。
*/
/* 新闻管理系统,需求如下
1、可以存储各类新闻标题(包含ID、名称、创建者)
2、可以获取新闻标题的总数
3、可以逐条打印每条新闻标题名称*/
/* 分析:
1、首先创建一个新闻类 具有 ID 名称 创建者的属性
2、创建几条新闻 用框架集合Collection接口中List接口的ArrayList类去存放数据
3、打印每条新闻*/
News n1=new News(1,"K歌天王廖磊北京开启演唱会1","吴杰");
News n2=new News(2,"K歌天王廖磊北京开启演唱会2","吴杰");
News n3=new News(3,"K歌天王廖磊北京开启演唱会3","吴杰");
News n4=new News(4,"K歌天王廖磊北京开启演唱会4","吴杰");
News n5=new News(5,"K歌天王廖磊北京开启演唱会5","吴杰");
News n6=new News(6,"K歌天王廖磊北京开启演唱会6","吴杰");
ArrayList list=new ArrayList();
//.add()方法是增加数据 实现存放
list.add(n1);
list.add(n2);
list.add(n3);
list.add(n4);
list.add(n5);
list.add(n6);
/*加需求 1、在指定位置4+吴杰开演唱会
创建一个新的对象n7
注意 ArrayList的索引位置下标同数组相同都是从0开始*/
News n7=new News(7,"K歌天王吴杰北京开启演唱会7","廖磊");
list.add(4,n7);
/*任务完成*/
/*加需求2、把索引位置2换成余兆开演唱会 刚学的一开始还没想起来 是 .set()方法
先增加一个对象n8*/
News n8=new News(8,"K歌天王余兆北京开启演唱会8","廖磊");
list.set(2, n8);
/*加需求3、判定列表中是否存在元素n99;
* 先创建一个对象n99但不放进ArrayList集合中*/
News n99=new News(99,"K歌天王肖俊北京开启演唱会99","廖磊");
System.out.println(list.contains(n6));
System.out.println(list.contains(n99));
// System.out.println(list.contains(n88)); 错误错误错误 不能判定不存在的对象!!!!
//加需求4、删除元素n7吴杰开演唱会
list.remove(n7);
//加需求5、删除下标 2位置的 新闻8 余兆开演唱会
list.remove(2);
//注意的是这个方法返回的是删除的那个对象 ***号标记
/* System.out.println("*************************");
News b=(News) list.get(2);
System.out.println(b.getId()+"---"+b.getTitle()+"---"+b.getAuthor());
System.out.println("*************************");*/
//上面代码出现了一些逻辑上的问题 先放过!!!
//获取新闻标题的总数
System.out.println("新闻标题的总数是:"+list.size());
//可以逐条打印每条新闻标题名称
for (int i = 0; i <list.size(); i++) {
News n=(News) list.get(i); //把list.get(i)返回的对象转换成了 News类的对象
//为什么News n=(News) list;这样写的格式不对!!!
System.out.println("新闻"+n.getId()+"--"+n.getTitle()+"-报道记者-"+n.getAuthor());
}
}
}
小白入门代码注释七七八八的都很乱,希望每天都能有进步。
溜了溜了,学习去了。
c> .size()—获取ArrayList集合的长度的方法 更正不应该说长度,准确的说法用该是ArrayList集合类中元素的个数!!!*****