常见的同义方法的区别:增加类和删除类

常见的同义方法的区别

增加类

add:把单个元素加入到集合里,对List是在末尾加入元素,对Set是尝试加入(如果有该元素则不添加)。

java 复制代码
List<String> list = new ArrayList<>();
list.add("A");
list.add("A");
System.out.println(list);   // [A, A]   两个都在

Set<String> set = new HashSet<>();
set.add("A");
set.add("A");
System.out.println(set);    // [A]      只留一个

put:Map接口专用,给Map添加键值对。

java 复制代码
Map<String, Integer> map = new HashMap<>();

map.put("苹果", 1);   // 没有 → 新增,返回 null
map.put("香蕉", 2);   // 新增,返回 null
map.put("苹果", 99);  // 已有 → 覆盖,返回旧值 1

System.out.println(map);  // {苹果=99, 香蕉=2}

append:StringBuilder / StringBuffer的方法,把参数的字符串追加到当前字符序列末尾。

java 复制代码
StringBuilder sb = new StringBuilder();
sb.append("你好");
sb.append(",世界");
sb.append("!");

System.out.println(sb);   // 你好,世界!

insert:StringBuilder / StringBuffer的方法,把参数的字符串插入到指定位置。

java 复制代码
StringBuilder sb = new StringBuilder("Hello");
sb.insert(5, " World");   // 在下标 5 处插入

System.out.println(sb);   // Hello World

addall:Collection 接口(List、Set 等都继承),把另一个集合的所有元素批量加入当前集合。

java 复制代码
List<String> list = new ArrayList<>();
list.add("A");

list.addAll(Arrays.asList("B", "C", "D"));  // 一次加多个

System.out.println(list);   // [A, B, C, D]

push:Deque 接口使用,把元素压到栈顶。

java 复制代码
Stack<String> stack = new Stack<>();
stack.push("A");
stack.push("B");
stack.push("C");

System.out.println(stack);   // [A, B, C]
System.out.println(stack.pop());  // C  (后进先出,最后进的先出)

删除类

remove:按值或者按索引删除。

java 复制代码
List<String> list = new ArrayList<>(Arrays.asList("A", "B", "C"));

list.remove("B");      // 按【值】删 → [A, C]
list.remove(0);        // 按【下标】删 → 删掉 A

System.out.println(list);   // [C]

delete:SQL中按照条件从表中删除一行或多行记录,表本身的结构(列定义、索引、约束)保持不变

sql 复制代码
-- 删某个名字的用户
DELETE FROM users WHERE name = '张三';

-- 删某个范围内的
DELETE FROM orders WHERE create_time < '2024-01-01';

-- 删全部但更快(不能加 WHERE,且不可回滚)
TRUNCATE TABLE users;

drop:SQL中删除整个对象。

sql 复制代码
-- 删掉整张表(结构和数据全没)
DROP TABLE users;

pop:删除并返回,栈/队列语义。

java 复制代码
Stack<String> stack = new Stack<>();
stack.push("A");
stack.push("B");
stack.push("C");

System.out.println(stack.pop());   // C  (取出栈顶,并删掉)
System.out.println(stack);         // [A, B]

clear:删除所有元素。

java 复制代码
List<String> list = new ArrayList<>(Arrays.asList("A", "B", "C"));
list.clear();
System.out.println(list);      // []
System.out.println(list.size()); // 
相关推荐
脚本自动化开发1 小时前
柔光屏平板怎么选?华为 MatePad Air Z 柔光版学
后端
程序猿DD2 小时前
OctaFuse 2.19.0:重做管理后台界面与交互,模型目录同步更新
后端
金銀銅鐵3 小时前
带您看懂字节码指令(一):一帧里有什么
java·后端·ai编程
码事漫谈4 小时前
Agent 测评是什么?大白话讲一讲
后端
皮皮林5514 小时前
在 IDEA 里斗个地主不过分吧!
后端
nice_lcj5204 小时前
【从零理解 Spring AI · 14】RAG 的四个环节:加载、切分、向量化、检索
java·spring boot·embedding·向量数据库·rag·spring ai·ai应用开发
SomeOtherTime5 小时前
Rust所有权(AI回答)
开发语言·后端·rust
程序员cxuan6 小时前
离谱,AI 大佬顺手搓了个 YouTube ,而我顺手给他搓了个中文插件
人工智能·后端·程序员
学长毕设6 小时前
基于springboot科创竞赛信息平台-附源码
java·spring boot·后端
深蓝AI7 小时前
Gemini Decisions API 来了:一次前向打分取代逐字解码,校准误差 0.0250 才是 agent 分支调用的真门槛
人工智能·后端