为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Java入门第三季_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • 将数组转换成List型,用到List里面的ArrayList.asList()方法转换成List型
    查看全部
  • 文件名格式是否正确
    查看全部
  • 课程创建以及添加进入课程列表,并且获得列表中指定位置的课程,如图
    查看全部
  • List是接口,所以在构造方法中不能直接实例化,而通过ArrayList()实例化. 例:public List coursesToSelect = new ArrayList(); 调用Add()方法添加到List中。有两种方法:<br> 方法1:直接添加,例:CoursesToSelect.add(cr1);<br> 方法2:可以指定添加的位置,例:CoursesToSelect.add(0,cr1);<br> 使用get()方法取出一个对象,当一个对象被添加到集合中去的时候,它会被忽略掉类型,而都变成Object类型,取出时需要类型转换。<br> 例:Course temp = (Course)coursesToSelect.get(0);<br> 如果添加到List中的长度大于他目前的长度,则系统会出现异常,即数组下表越界异常
    查看全部
  • ·泛型(generic) 泛型<>;规定List定义的容器只能存储某种类型的元素。不用泛型的话是什么类型的元素都可以插入,因为插入集合是忽略其类型,把它看成为Object类型,取出时需要强行转换对应的类型。 编写带有泛型的集合 List<Course> courseToSelect; 在构造方法中(实例化的时候也可以不在构造方法,直接实例就可以) this.courseToSelect=new ArrayList<Course>(); //带有泛型-Course的List类型属性就创建了 泛型集合中,不能添加泛型规定的类型以及其子类型以外的对象,否则会报错。 运用了泛型的话,用foreach语句时 存储变量应该为泛型的类型。for(Course a:courseToSelect),不必再用Object取出再强转,因为已经规定容器里装的都是Course类型。
    查看全部
  • 对于s1和s2做的是赋值操作,而没有创建新的对象,所以引用相同。而s3和s4是用new关键字重新创建的对象,所以不同
    查看全部
  • 删除元素: List中有remove(index),remove(对象值)和removeAll(Arrays.asList(对象数组名))方法来删除容器中元素的值(用法和add类似).<br> Course是信息课程类,有id和name属性。courseToSelect是list的序列容器对象。<br> 1.remove(index);删除位置要大于0并且小于List(序列容器)的长度。如果要删除全部可以用for循环嵌套此方法。<br> 2.remove(object);先要获得删除的值,用法是先定义一个信息变量通过get()来存放要删除的值,然后用remove(删除的对象值);<br> public void textdelect{<br> Course cr=(Course)(courseToSelect.get(4));<br> courseToSelect.remove(cr);//通过remove(对象值);<br> 或者 courseToSelect.remove(4);//通过remove(删除位置); }<br> 3.removeAll(Arrays.asList());要删除指定的多个位置 Arrays.asLIst(对象数组名);作用是把数组转换为集合<br> 用法是先创建信息对象数组存放删除元素的值,然后再用removeAll(Arrays.asList(对象数组名))方法,删除集合数组的元素。<br> public void textdelext2{<br> Course []course={(Course)(courseToSelect.get(4)),(Course)(courseToSelect.get(5))}; // 定义数组存放要删除的值<br> courseToSelect.removeAll(Arrays.asList(course)); // 删除4和5位置的值 } List集合中删除元素 1.List子类对象.remove(object),必须先获取该删除元素 2.List子类对象remove(index),直接删除 3.List子类对象removeAll(Arrays.asList(Array[])),必须先创建该删除元素数组。
    查看全部
  • 1. String a="imooc"; 2. String a="imooc.com"; 3. String b=new String("imooc"); 通过两次给变量a赋值,改变的是a的指针指向吗? 那么第一次给变量a赋的值"imooc"是否会被回收呢? 以上的两种写法的意义区别是什么? 谢谢。 2016-02-17 源自:Java入门第三季 2-2 71 浏览 4 回答 最佳回答 2016-02-18 1、两次给a赋值,是改变了a的引用,即a中存放的地址指向了不同的String Pool中的对象(从指向"imooc"改变为指向“imooc.com”); 2、String a = "imooc"; 首先会检查 String Pool中有没有“imooc”这个字符串对象,如果有,a直接reference to该字符串对象,如果没有,在String Pool中创建“imooc”,并使a reference to 所创建的对象; 3、String b = new String("imooc");首先,在heap上创建一个String对象“imooc”,b reference to 该对象;然后,JVM会检查String Pool中是否存在“imooc”对象,如果没有,则在String Pool中再创建一个;
    查看全部
  • java中的集合框架:
    查看全部
  • Collections工具类
    查看全部
  • Arrays类
    查看全部
  • 数组与集合的区别:
    查看全部
  • 通过List中的set()方法来修改集合中的元素 具体实现 集合属性名.set(元素下标,new("id","name")) 修改后的实例对象
    查看全部
  • 以下三种方法都是用来取出List中元素的方法:<br> -----for循环-----<br> public void testGet(){<br> int size=coursesToSelect.size();<br> for(int i=0;i<size;i++){<br> Course cr=(Course) coursesToSelect.get(i);<br> System.out.println("取出的课程:"+cr.getId()+":"+cr.getName());<br> }<br> }<br> -----迭代器-----<br> Iterator是一个接口,依赖于集合存在的,本身不具备存储功能<br> Iterator it=courseToSelect.iterator();<br> while(it.hasNext()){<br> Course cr=(Course) it.next();<br> System.out.println("课程:" + cr.id + ":" + cr.name);<br> }<br> <br> -----for each(增强for循环)-----<br> <br> 凡是继承了Iterable接口的类所生成的对象都可以用for/each循环<br> <br> for(Object obj:coursesToSelect){//遍历集合中的每一个元素,作为每一个Object变量<br> Course cr=(Course) obj;<br> System.out.println("课程:" + cr.id + ":" + cr.name);<br> }
    查看全部
  • 在ArrayList中添加元素的方法:<br><br><br> 一、单个添加方式。Course cr1=new Course("1","数据结构");courseToSelect.add(cr1);<br><br> 或者 Course cr2=new Course("2","C语言");courseToSelect.add(0,cr2);<br><br> 二、数组形式添加,调用getAll()方法。<br><br> <1>先创建一个数组元素,Course[] course = {new Course("3", "离散数学"), new Course("4", "汇编语言");<br><br> 取得collection实例,通过coursesToSelect.addAll(Arrays.asList(course))中asList将创建的course数组转变成一个 List,并且将course值传递进去;将课程从集合中取出,Course temp3 = (Course) coursesToSelect.get(2);Course temp4 = (Course) coursesToSelect.get(3);<br><br> <2>先创建一个数组元素,Course[] course2 = {new Course("5", "高等数学"), new Course("6", "线性代数")};<br><br> 然后coursesToSelect.addAll(2, Arrays.asList(course2))为新元素指定位置,并且例子中此处添加两个元素,但coursesToSelect.addAll(index,course2)中只指定一次index值,即可将两元素添加在2、3位置。<br> 三、补充每种方法的两个确定位置的方式:ArrayList.addAll(int index, List L) 在指定位置插入一个序列表,<br> ArrayList.addAll(List L) 在已有ArrayList的末尾插入一个list序列。
    查看全部

举报

0/150
提交
取消
课程须知
此部分为 Java 课程的进阶内容,适合具有一定 Java 基础的伙伴们学习,如果您是新手,建议您移步 《Java入门第一季》 和 《Java入门第二季》,在理解并掌握面向对象相关知识后再回来进修。
老师告诉你能学到什么?
本课程将学习 Java 中的异常处理、集合框架、字符串、常用类等,逐步学习掌握 Java 高级技术。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!