![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java架构师之性能优化篇
云里飞鸟轻轻摇摆
这个作者很懒,什么都没留下…
展开
-
#架构师之性能优化篇--使用包装类的parseXXX()代替valuesOf()
valuesOf和parseXXX都是包装类的静态方法,都可以将字符串类型的数字转化为整型数据,但略有不同,我们来看下面这一段代码:String numStr1 = "127";String numStr2 = "127";System.out.println(Integer.valueOf(numStr1) == Integer.valueOf(numStr2));System.out....原创 2019-01-19 11:25:52 · 856 阅读 · 0 评论 -
#架构师之性能优化篇--遍历map最优方法entrySet的迭代方式
假设创建了如下的map:Map<String,String> map = new HashMap<String,String>();for(int i = 1001;i<149511;i++){ map.put(i+"",i+"");}遍历map有五种遍历方式,如下所示:2.1 通过增强型for遍历keySetlong start1 = System....原创 2019-01-20 23:45:18 · 705 阅读 · 1 评论 -
#架构师之性能优化篇--两个Integer类型比较大小
由于Integer是引用类型,因此比较大小使用equals方法,但是Integer与int类型比较时,会转化为int类型进行比较。对于-128-127之间的数据,可以使用==进行比较两个Integer类型数据的大小(因为此时使用的是缓存数据,数据的内存地址都是使用的缓存数据的内存地址),但是以外的数据需要使用equals()进行数据大小比较。...原创 2019-01-20 23:48:19 · 511 阅读 · 0 评论 -
#架构师之性能优化篇--String与StringBuffer的拼接
4 String与StringBuffer的拼接例 对下面的代码进行优化String str = "";for(int i = 0;i&lt;10;i++){str +=""+i;}说明:在java中,String的+拼接方式不适合使用在大量的拼接场合中。那么这是为什么呢?换句话说,+拼接符在拼接字符串的时候都做了什么呢?我们可以使用Java反编译工具来查看+拼接符到底做了些什么。首...原创 2019-01-20 23:51:40 · 458 阅读 · 0 评论 -
#架构师之性能优化篇--ArrayList遍历最优化探究
你已经知道遍历ArrayList的方式有三种,分别是get(i)/size()、增强型for(forEach)和使用迭代器。那么这三种方式效率最高的是哪一种方式呢?List<String> list = new ArrayList<String>();List<String> list2 = new ArrayList<String>();Li...原创 2019-01-20 23:55:26 · 374 阅读 · 0 评论 -
#架构师之性能优化篇--不要在循环体内声明变量或对象
List<Object> myList = new ArrayList<Object>(); for(int k = 0;k<10;k++){ //注意即使是将str提到循环外声明拼接字符串还是会创建多个StringBuilder对象 String str = k+""; A a = new A(); a.set(s...原创 2019-01-21 00:02:26 · 1070 阅读 · 1 评论 -
#架构师之性能优化篇--不要在循环中使用try…catch…,应该把其放在最外层
除非需要在循环中进行特殊的捕获处理,否则禁止在循环内部使用try…catch…语句。正确的做法是在for循环外部进行异常捕获处理。原创 2019-01-21 00:05:05 · 3746 阅读 · 1 评论 -
#架构师之性能优化篇--应使用日志打印语句代替e.printStackTrace()
例try{ int i = 3/0;}catch(Exception e){ e.printStackTrace();}需要将其修改为日志打印异常的方式:private static final Logger logger = Logger.getLogger(TestA.class);try{ int i = 3/0;}catch(Exception e){ logger...原创 2019-01-21 00:06:24 · 5014 阅读 · 0 评论 -
#架构师之性能优化篇--防止SQL注入攻击
要解决SQL注入攻击,首先必须要认识什么是SQL注入攻击。先来看一个例子:package com.yzh.maven.main;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.St...原创 2019-01-21 00:07:52 · 194 阅读 · 0 评论