zoukankan      html  css  js  c++  java
  • Vector、ArrayList异同和HTTP请求异同的概括和区别

    今天我所记录的是两个异同的概括:

    HTTP:

    同步请求:提交请求->等待服务器处理->处理完毕返回给客户端  这个期间客户端浏览器只能处于等待状态,得到回应才可以执行下一步操作。

    异步请求:请求通过事件触发->服务器处理->处理完毕  服务器处理期间还未返回结果之前客户端可以执行其他操作。

    集合:

    Vector(同步类):

    1.是一个自动增长的对象数组,所以无需声明数组上限,并且vector提供额外的增加,删除元素,比数组操作高效。

    2.vector相对于线程是安全的(前提是加上 synchronized进行同步),在一个时间点只有一个线程可以对vector对象进行操作,但是vector的安全可以说是用效率换来的,效率不高。

    3.Vector是唯一一个既有Enumeration,又有Iterator进行遍历的类,而ArrayList只有Iterator。

    // Vector的增加方法
    public synchronized boolean add(E e) {
        modCount++;
        ensureCapacityHelper(elementCount + 1);
        elementData[elementCount++] = e;
        return true;
    }

    ArrayList(异步类):

    1.是一个动态数组,随机访问速度快,插入和移除性能较差,并且支持null元素、有顺序、元素可以重复。

    2.arraylist相对于线程是不安全的,每个ArrayList实例都有一个容量(Capacity),即用于存储元素的数组的大小。这个容量可随着不断添加新元素而自动增加,但是增长算法并没有定义。当需要插入大量元素时,在插入前可以调用ensureCapacity方法来增加ArrayList的容量以提高插入效率。

    // ArrayList的新增方法
    public boolean add(E e) {
        ensureCapacityInternal(size + 1);
        elementData[size++] = e;
        return true;
    }
  • 相关阅读:
    (三)xpath爬取4K高清美女壁纸
    聚焦爬虫:数据解析
    (二)requests-爬取国家药监局生产许可证数据
    (一)requests-实战小练习
    requests模块
    spring+apache dbcp +oracle 连接池配置以及优化
    IntelliJ IDEA 注释模版 输入/**后 不显示配置好的模板
    oracle 隔离级别、事务怎么开始的以及如何查看数据库采用字符集
    java 日期处理相关
    Oracle 插入数据时获取系统时间
  • 原文地址:https://www.cnblogs.com/huangting/p/10898729.html
Copyright © 2011-2022 走看看