当前位置:首页 > 后端开发 > 正文

Java添加语句怎么写?,(严格控制在12字)

Java中使用 PreparedStatement执行SQL添加语句: ,1. 创建SQL模板: String sql = "INSERT INTO 表名(列1,列2) VALUES(?,?)"; ,2. 预编译语句并设置参数: , pstmt.setString(1, "值1");pstmt.setInt(2, 值2); ,3. 执行更新: int rows = pstmt.executeUpdate();

集合框架的添加操作

List 集合

List<String> fruitList = new ArrayList<>();
// 基础添加
fruitList.add("Apple");  // 末尾添加单个元素
fruitList.add(1, "Banana");  // 指定索引位置插入
// 批量添加
List<String> newFruits = Arrays.asList("Mango", "Orange");
fruitList.addAll(newFruits);  // 合并集合
  • 返回值add()返回boolean(成功为true
  • 注意:索引位置需在[0, size()]范围内

Set 集合

Set<Integer> numberSet = new HashSet<>();
numberSet.add(10);  // 添加元素
numberSet.add(20);  
System.out.println(numberSet.add(10));  // 输出false (元素已存在)
  • 特性:自动去重,添加重复元素返回false

Map 集合

Map<String, Integer> countryCode = new HashMap<>();
countryCode.put("US", 1);    // 添加键值对
countryCode.put("UK", 44);
// 安全添加(当键不存在时)
countryCode.putIfAbsent("JP", 81);  // 键不存在才添加

数组的动态添加

由于数组长度固定,推荐转为ArrayList操作:

String[] initialArray = {"A", "B"};
List<String> dynamicList = new ArrayList<>(Arrays.asList(initialArray));
dynamicList.add("C");  // 动态扩展
// 转回数组(可选)
String[] newArray = dynamicList.toArray(new String[0]);

数据库添加操作(JDBC)

String sql = "INSERT INTO users (name, email) VALUES (?, ?)";
try (Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
     PreparedStatement pstmt = conn.prepareStatement(sql)) {
    // 参数绑定
    pstmt.setString(1, "John");     // 第一个?占位符
    pstmt.setString(2, "john@example.com");
    int rowsAffected = pstmt.executeUpdate();  // 执行添加
    System.out.println("插入行数: " + rowsAffected);
} catch (SQLException e) {
    e.printStackTrace();
}
  • 关键点
    • 使用PreparedStatement防SQL注入
    • executeUpdate()返回受影响行数
    • 资源自动关闭(try-with-resources)

并发场景下的线程安全操作

// 线程安全列表
List<String> syncList = Collections.synchronizedList(new ArrayList<>());
syncList.add("thread-safe");
// ConcurrentHashMap高效并发
ConcurrentMap<String, Integer> concurrentMap = new ConcurrentHashMap<>();
concurrentMap.put("key", 100);

最佳实践与注意事项

  1. 集合选择原则

    Java添加语句怎么写?,(严格控制在12字)  第1张

    • 快速随机访问 → ArrayList
    • 频繁增删 → LinkedList
    • 去重 → HashSet/TreeSet
    • 键值存储 → HashMap/TreeMap
  2. 性能优化

    // 初始化指定容量(避免扩容开销)
    List<String> optimizedList = new ArrayList<>(1000);
  3. 空值处理

    • ArrayList/HashMap允许null元素
    • ConcurrentHashMap禁止null
  4. 不可变集合(Java 9+):

    List<String> unmodifiableList = List.of("A", "B", "C");
    unmodifiableList.add("D");  // 抛出UnsupportedOperationException

常见错误规避

错误案例 修正方案
list.add(5, "X")list.size()=3 确保索引≤当前长度
map.put(null, 100) 但使用TreeMap 改用HashMap或非null
循环中直接删除集合元素 使用Iterator.remove()

通过上述示例和规范,可高效实现Java中的各类添加操作,重点在于:

  • 集合选择匹配业务场景
  • 并发环境使用线程安全类
  • 数据库操作务必参数化防注入
  • 不可变集合提升代码健壮性

权威参考
Oracle官方Java文档 Collections Framework
《Effective Java》第4章 泛型与集合(Joshua Bloch著)
JDBC规范 JSR 221

0