List的add方法与addAll方法

区别

add
add是将传入的参数作为当前List中的一个Item存储,即使你传入一个List也只会另当前的List增加1个元素

addAll
addAll是传入一个List,将此List中的所有元素加入到当前List中,也就是当前List会增加的元素个数为传入的List的大小

分析
List result = new ArrayList();

// add(int index,Elelemt e)把list中的每一个元素加到result中,result.size()==list.size()
result.addAll(list);

//addAll(Collection c)将list作为一个元素加到result中,则result.size()为1
result.add(list);
--------------------------------------

addAll(Collection c)

此方法按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。如果正在进行此操作时修改指定的 collection ,那么此操作的行为是不确定的。(这意味着如果指定的 collection是此列表且此列表是非空的,那么此调用的行为是不确定的)。

C:包含要添加到此列表中的元素的 collection

return:如果此列表由于调用而发生更改,则返回 true

Throws:NullPointerException: 如果指定的 collection 为 null

示例

List list = new ArrayList<>();
List<List> list1 = new ArrayList<>();
List list2 = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
System.out.println(list);
list1.add(list);
System.out.println("add方法:"+list1);
list2.addAll(list);
System.out.println("addAll方法:"+list2);

list1与list2插入结果如下:
[1, 2, 3]
add方法:[[1, 2, 3]]
addAll方法:[1, 2, 3]

list1与list2遍历结果如下:

for (List list3 : list1) {
System.out.println("list1遍历结果:"+list3);
}for (String list4 : list2) {
System.out.println("list2遍历结果:"+list4);
}
结果:
list1 遍历结果:[1, 2, 3]
list2 遍历结果:1
list2 遍历结果:2
list2 遍历结果:3

StringBuffer的delete方法与deleteCharAt的区别

区别

delete方法与deleteCharAt两个方法都是用来删除StringBuffer字符串指定索引字符的方法,

delete(int  a,int  b)有两个参数,使用时删除索引从a开始(包含a)到b(不包含b)的所有字符;

deleteCharAt(int  a)只有一个参数,使用时删除索引为a的字符;

示例

StringBuffer buff = new StringBuffer("0123456789");
System.out.println("buff="+buff);

//删除下标从3到5的字符
buff.delete(3,5);
System.out.println("deletionBack="+ buff);

buff = new StringBuffer("0123456789");
//删除下标为8字符
buff.deleteCharAt(8);
System.out.println("delectCharAtBack="+buff);

控制台输出结果:
buff=0123456789
deletionBack=01256789
delectCharAtBack=012345679

List的add方法与addAll方法的区别、StringBuffer的delete方法与deleteCharAt的区别的更多相关文章

  1. StringBuffer的delete方法与deleteCharAt方法的区别。

    delete方法与deleteCharAt两个方法都是用来删除StringBuffer字符串指定索引字符的方法, delete(int  begin,int  end)有两个参数,使用时删除索引从be ...

  2. 浅谈http协议六种请求方法,get、head、put、delete、post、options区别

    标准Http协议支持六种请求方法,即: 1.GET 2.POST 3.PUT 4.Delete 5.HEAD 6.Options 但其实我们大部分情况下只用到了GET和POST.如果想设计一个符合RE ...

  3. 解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    GET: 请求指定的页面信息,并返回实体主体.HEAD: 只请求页面的首部.POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体.PUT: 从客户端向服务器传送的数据取代指定的文档 ...

  4. php 解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    GET: 请求指定的页面信息,并返回实体主体.HEAD: 只请求页面的首部.POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体.PUT: 从客户端向服务器传送的数据取代指定的文档 ...

  5. Hibernate&nbsp;Session的delete()方法

    本文介绍Hibernate Session的delete()方法.delete()方法用于从数据库中删除与Java对象对应的记录.对应游离对象和持久化对象,delete语句会做出不同的反应. AD:  ...

  6. list的add()方法与addAll()方法简介

    简单描述:月读别人的代码,发现了一个有意思的东西,list的一个方法,addAll(),然后就去度娘了一下,发现这个还挺有用的. 吐槽一下:为什么自己没发现这个方法呢?因为平时自己写list的时候,基 ...

  7. docker Dockerfile指令ADD和COPY的区别,添加目录方法

    docker Dockerfile指令ADD和COPY的区别,添加目录方法 ADD指令的功能是将主机构建环境(上下文)目录中的文件和目录.以及一个URL标记的文件 拷贝到镜像中.其格式是: ADD 源 ...

  8. 反射-优化及程序集等(用委托的方式调用需要反射调用的方法(或者属性、字段),而不去使用Invoke方法)

    反射-优化及程序集等(用委托的方式调用需要反射调用的方法(或者属性.字段),而不去使用Invoke方法)   创建Delegate (1).Delegate.CreateDelegate(Type, ...

  9. 用JQuery中的Ajax方法获取web service等后台程序中的方法

    用JQuery中的Ajax方法获取web service等后台程序中的方法 1.准备需要被前台html页面调用的web Service,这里我们就用ws来代替了,代码如下: using System; ...

随机推荐

  1. 分布式文件系统FastDFS架构认知

    FastDFS是一款类Google FS的开源分布式文件系统(应用级的分布式文件存储服务). FastDFS的设计理念 FastDFS是为互联网应用量身定做的分布式文件系统,充分考虑了冗余备份.负载均 ...

  2. 一个项目中:只能存在一个 WebMvcConfigurationSupport (添加swagger坑)

    问题再现: 1.添加了swagger配置,导致接口响应的中文乱码 2.于是又添加了配置解决中文乱码的配置: 问题来了,添加了CharsetConfig 配置后swagger的配置失效了,访问404,搞 ...

  3. js 获取窗口大小

     //获得窗口大小         function findDimensions() //函数:获取尺寸         {             var point = {};          ...

  4. 关于class

    1.使用#include分离函数的定义与实现 c语言可以在xxx.h中定义函数,然后在xxx.cpp中实现函数: 在需要用到这些函数时,只要用#include引入xxx.h即可,这样就不用将所有代码全 ...

  5. P1169 [ZJOI2007]棋盘制作 悬线法or单调栈

    思路:悬线法\(or\)单调栈 提交:2次 错因:正方形面积取错了\(QwQ\) 题解: 悬线法 讲解:王知昆\(dalao\)的\(PPT\) 详见代码: #include<cstdio> ...

  6. leetcode解题报告(2):Remove Duplicates from Sorted ArrayII

    描述 Follow up for "Remove Duplicates": What if duplicates are allowed at most twice? For ex ...

  7. Doki Doki Literature Club ZOJ - 4035

    Doki Doki Literature Club ZOJ - 4035 题解:其实就是简单排序输出就没了. #include <cstdio> #include <cstring& ...

  8. SpringMVC指定webapp的首页

    webapp的首页指的是http://localhost:8080/ 方法一 追加一个[/]URI的请求方法 @Controller public class WelcomeController { ...

  9. 使用setUncaughtExceptionHandler在线程外面捕获异常

    package com.dwz.concurrency.chapter11; /** * Thread的run方法是不能throw出异常的,只能在日志或者console中打印出来 */ public ...

  10. java代理,手把手交你写java代理

    一:常用的java代理模式 一般经常做java开发的知道java的代理模式一共有三种,第一种也就是静态代理,这种用法比较简单,没有什么魔法棒,比较好理解,另外两种分别是JDK代理和cglib代理,他们 ...