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

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • 泛型集合中除了可以存放泛型本类型引用之外,还可以存放泛型子类型的对象引用。
    查看全部
  • public void testSort3() { List<String> stringList = new ArrayList<String>(); String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; Random random = new Random(); for (int j = 0; j < 10; j++) { int x; StringBuffer st = new StringBuffer(); do{ x = random.nextInt(11); for (int i = 0; i < x; i++) { st.append(str.charAt(random.nextInt(62))); } }while(stringList.contains(st)x==0); stringList.add(st.toString()); } System.out.println("---------------排序前---------------"); for (String string : stringList) { System.out.println(string); } System.out.println("---------------排序后---------------"); Collections.sort(stringList); for (String string : stringList) { System.out.println(string); } }
    查看全部
  • contains method(To decide whether the object is exist in list or not)
    查看全部
  • *SET加 -判断是否存在:xxx.contains(zz); 返回为true或false 要注意:这里的contain判断的不是对象内容,其本质是用hashcode判断其哈希码(和List不同),同时用equals来比较对象的内存地址。要实现内容的比较,需要在本类中重写hashcode方法和equals方法。 *map加 -判断是否存在:xxx.containsKey(key); xxx.containsValue(zz); 返回为true或false 要实现内容的比较,同样需要在本类中重写equals方法。
    查看全部
  • list加2 - 对整个list进行排序:利用Collections类:Collections.sort(xxx); 这个直接改变了整个list 注意,参数只能是可实现comparable接口的对象。另外,如果list内是string型,则排序依据是按照字符串首字母的顺序,首字母相同则比较次一个字母,排序按照ASCII顺序。 如果希望这个对象能够被比较、排序,那需要给这个对象的类implement一个comparable接口: public class yy implements Comparable<yy> {//注意这个接口需要泛型 … public int comparaTo(yy zz) {//要实现comparaTo方法 如比较zz对象的m属性 return this.m.comparaTo(zz.m);//递归调用 } … } 这样以后,Collections.sort(xxx)里就可以传yy型的对象的集合进去了。 而如果我突然临时需要一个新的比较规则来比较,但别的地方又还需要按原来继承Comparable接口的compareTo方法,那么在不想改变原规则的基础上,可以再定义一个新的类用于临时比较: public class yy2 implements comparator<yy> { … public int comparaTo(yy z1, yy z2 ){ return z1.n.compareTo(z2.n);// 如这次比较zz对象的n属性 } … } 然后,使用Collections.sort方法:Collections.sort(xxx, new yy2()); (xxx是yy对象组成的list)
    查看全部
  • list加1 - 判断是否存在:xxx.contains(zz); 返回为true或false 要注意:假如list中有zz,而你只是给contain传入一个和zz内容一样的对象,返回依然是false,因为这里的contain判断的不是对象内容,其本质是用equals来比较对象的内存地址。在本类中重写equals可解决这个问题。 还有containsAll,和之前的那些xxxAll是一样用法。 - 判断存在的位置xxx.indexOf(zz); 返回int型位置。equals被重写后,可实现只判断对象内容。另外,如果有内容重复的,只输出第一次出现的位置。还有一个lastIndexOf是从末尾开始扫描,此时如内容重复则输出最后一次出现的位置。其实这个也兼顾判断是否存在,因为不存在会返回-1.
    查看全部
  • 异常分类
    查看全部
    0 采集 收起 来源:Java异常简介

    2016-08-26

  • MM HH
    查看全部
  • 1、 调用 SimpleDateFormat 对象的 parse() 方法时可能会出现转换异常,即 ParseException ,因此需要进行异常处理 2、 使用 Date 类时需要导入 java.util 包,使用 SimpleDateFormat 时需要导入 java.text 包
    查看全部
  • List中元素可重复
    查看全部
  • Arrays.asList(数组名) 将数组转化为List
    查看全部
  • 555
    查看全部
    0 采集 收起 来源:经验总结

    2016-08-26

  • List是接口,不能直接实例化
    查看全部
  • 修改一个map对象需要调用put方法
    查看全部
  • Map -特点:元素成对出现,key-value,是映射关系,key不能重复,但value可以重复,也就是说,可以多key对一个value。支持泛型如Map<yy1, yy2>。 -其“儿子”HashMap是最常用的,HashMap中是无序排列,其元素中key或value可为null(但只能有一个为null)。 -声明(泛型)举例: 在类中声明 public Map<String, yy> xxx; 然后再构造方法中this.xxx = new hashMap<String,yy>(); -获取:yy temp = xxx.get( key(本例string型) ) -添加:xxx.put( key(string型), zz(yy型) ); -返回map中所有key(返回是set型集合形式) set<string> xxxxx = xxx.keyset(); 用于遍历。 -返回map中所有entry对(key-value对)(返回是set型集合形式) set<Entry<string, yy>> xxxxx = xxx.entrySet(); 同样用于遍历。 遍历时:for(Entry<string,yy> 元素: xxxxx) -删除:xxx.remove(key); -修改:也是用put,当put方法传入的key存在就相当于是修改(覆盖)
    查看全部

举报

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

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