基本运算优化
x << 1
代替 x * 2
)Math.pow()
前考虑是否可用移位或乘法替代集合运算优化
// 不佳做法
for (int i = 0; i < list.size(); i++) {...}
// 优化做法
int size = list.size();
for (int i = 0; i < size; i++) {...}
使用高效的数据结构
HashSet
或 HashMap
TreeSet
或 TreeMap
避免在列上使用函数
-- 不佳做法(无法使用索引)
SELECT * FROM users WHERE YEAR(create_time) = 2023;
-- 优化做法
SELECT * FROM users WHERE create_time BETWEEN '2023-01-01' AND '2023-12-31';
避免在 WHERE 子句中对列进行运算
-- 不佳做法(无法使用索引)
SELECT * FROM products WHERE price * 1.1 > 100;
-- 优化做法
SELECT * FROM products WHERE price > 100 / 1.1;
合理使用索引
使用 EXPLAIN 分析查询
EXPLAIN SELECT * FROM orders WHERE total_amount > 1000;
运算位置选择原则
批量操作替代循环
INSERT ... VALUES (...), (...), ...
缓存策略
通过以上优化策略,可以显著提高 Java 和 MySQL 中运算操作的执行效率。