A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lc1992 初级黑马   /  2018-11-14 16:21  /  444 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

就业班  day01,day02 的笔记
就业班day1      Object类 常用API



toString() :返回该对象的字符串表示

不打印地址值, 而想要打印出对象的属性值,一般我们都要输出JavaBean的属性名和属性值, Alt + Insert 选择 toString() 即可重写

equals()

                             不重写时, 自定义对象默认继承Object类的equals()方法, 通过 == 比较地址值

                             但开发时, 一般要重写equals()方法, 让对象"根据属性值"来判断是否相等

                             IDEA快捷键: Alt+Insert, 选 equals() and hashCode()

一  日期时间相关的类                 

  long和Date对象互转                        String和Date对象互转                        Calendar对象和Date对象互转             
    long
        \       SimpleDateFormat

         Date -------------------- String

        /

Calendar

System.CurrentTimeMills();  获取当前时间日期到时间远点(1970年0时0分0秒,中国东八区,加8小时)的毫秒值

(1)Date类                 空参 获取当前时间日期,        带参(long型) 把传递的毫秒值转换成日期

// 构造方法                                        Date(): 创建Date对象, 表示当前系统时间

                                                        Date(long date): 创建Date对象, 使用指定的毫秒值作为时间

gettime同System.CurrentTimeMills();       日期变毫秒   longtime=date,get Time();

// 常用成员方法                                long getTime(): 获取Date对象中保存的时间毫秒值

                                                        void setTime(long time): 修改Date对象的时间

(2)DateFormat类          抽象类

常用成员方法                                   (抽象类不能创建对象, 但可以有非抽象的方法供子类使用)

        String format(Date date):         格式化, 从Date对象转换为String对象

例子              SimpleDateFormat     shen=new SimpleDateFormat(.yyyy年MM月dd日  HH:mm:ss.)

       Date date=new date;

       String d=shen.format(date);

sout(d)--->2018年11月14日16:06:00

        Date parse(String source):      解析, 从String对象转换为Date对象

例子              SimpleDateFormat     shen=new SimpleDateFormat(.yyyy年MM月dd日  HH:mm:ss.)

Date d=shen.parse(2018年11月14日16:06:00);

sout(d)-------->打印是Date日期即(16:11:00   2018)


二  Calendar类   日历

静态方法                                                static Calendar getInstance():
Calendar c = Calendar.getInstance();                     // 代表了当前时间

三   System类: currentTimeMillis()和arrayCopy()方法

四  StringBuilder类
new StringBuilder()
StringBuilder append(任意类型)

String toString()

五  包装类
自动装箱: 基本 -> 包装 Integer.valueOf()

自动拆箱: 包装 -> 基本 int a = i.intValue();

就业班day2Collection 泛型

Collection单列集合                共性方法                迭代器                增强for                泛型

一  集合

Collection(共性方法)  接口:         单列集合顶层        :

                                                                      |_ List接口: 元素存取有序, 可重复, 有索引

        |_ Set接口: 不可重复, 无索引

Collection<Integer> col = new ArrayList<>();                  // 多态, 只在学习时用这种方式创建对象

coll.共有方法();                boolean add(E e): 把给定的对象添加到当前集合中

                                        void clear(): 清空集合中所有的元素

                                        boolean remove(E e): 把给定的对象在当前集合中删除

    int size(): 返回集合中元素的个数

                                        boolean contains(E e): 判断当前集合中是否包含给定的对象  存在=true

                                        boolean isEmpty(): 判断当前集合是否为空(没有元素)            空=true

                                        Object[] toArray(): 把集合中的元素,存储到数组中       

                              例子: Object[] obj =  list.toArray();

二 迭代器(Iterator):   用于遍历集合的对象,通用的取元素方式.

使用迭代器遍历集合的3步:

        1. 使用集合对象的 iterator() 获取迭代器对象, 用 Iterator 接口接收.(多态)

        2. 使用 Iterator 接口中的 hasNext() 方法, 判断是否有下一个元素

        3. 使用 Iterator 接口中的 next() 方法, 获取下一个元素

格式例子:                Iterator<元素类型> shen = 集合对象.iterator();                (所以要建一个集合)

while (iterator.hasNext()) {

                            元素类型 变量名 = iterator.next();                }

迭代器的并发修改异常                1. 迭代过程中不要修改集合长度

        2. 在迭代的过程中添加, 删除元素, 要使用迭代器自带的方法, 而不能使用集合的方法

三  增强for循环                用于遍历集合,数组, 底层采用迭代器

格式                                              for (元素类型 变量名 : 数组/集合 名) {

                                                     sout(变量名)                                }

快捷键                                      集合.for

四 泛型                                 泛型没有继承概念

定义集合时, 某些方法不知道使用什么类型时, 就可以使用泛型

                                             创建集合对象时, 需要确定泛型具体的类型

(1) 如何在类的声明上定义泛型

     public class ArrayList<E> {   // E可以表示任意的引用类型, 但是只能表示某一种,默认obj.

     private E name;                  泛型在"使用"时, "必须是"具体的数据类型 ArrayList<Integer>

(2) 如何在方法中定义泛型

格式                                       修饰符 <代表泛型的名字> 返回值类型 方法名(带泛型的参数){    }

                                              例子        public static <S> void staticMethod(S s)   

   "在调用方法时"确定泛型的具体类型        

   例子   gm.method(1);    // 确定为Integer

             gm.method("a");  // 确定为String

(3) 接口中定义泛型              1   定义接口实现类指定接口泛型      2   接口是什么类型,类就跟着

格式                                     修饰符 interface 接口名<代表泛型的变量> {  }

public interface GenericInterface<I> {

                                                void method(I i); }

五  泛型通配符

受限                                        上限: <? extends E>  可以接收泛型为E类型或E类型的子类类型

    下限: <? super E> 可以接收泛型为E类型或E类型的父类类型

通配符                                <?>

    <? extends E>

    <? super E>



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马