- 博客(39)
- 收藏
- 关注
原创 将下划线替换为驼峰命名法【使用正则表达式】
替换前 @SerializedName("merchant_order_no") private String merchant_order_no; @SerializedName("amount") private String amount; @SerializedName("business_type_id") private String business_type_id; @SerializedName("title") private String title
2020-10-26 09:58:02
1518
原创 代码整洁之道整理
代码整洁之道分享整洁代码的必要性代码整洁非常必要,将童子军军规运用到开发有意义的命名名副其实,无歧义长优于短,名称易读,详细且匹配,易于搜索类名为名次,方法为动词关于函数函数应短小,只做一件事函数参数越少越好,不要超过三个按思路写好函数后,仔细打磨,抽象拆分,合理命名。关于注释尽量不要使用注释,用属性名或者方法名表达出意思,删除注释的代码关于格式概览在顶部,合理设置间距,区分代码块有联系的代码放一起;变量声明在顶部;运算符处应该有合适的间隔和靠近,水平上限不易过长关于错误处理不在catch中处理逻辑,不返回
2020-10-12 17:14:55
419
原创 LiveData相关详解
一、基础概念 LiveData是一种可观察的数据存储类,具有生命周期感知能力。当其数据更新时,会更新通知给处于活跃状态(STARTED、RESUMED)的观察者(Observer)。 下图为LiveData具有的优势(截自官网),可以说LiveData的存在,为界面数据的处理提供了非常大的便利二、实际运用Android提供了简单的封装类MutableLiveData,设置好泛型即可实现一个LiveData。提供了setValue,postValue,getVa...
2020-09-21 21:45:46
358
原创 Fragment生命周期与执行事务
onAttach() -- onCreate() -- onCreateView() -- onActivityCreated() -- onStart() -- onResume() -- onPause() --onStop() -- onDestoryView() -- onDestory() -- onDetach()onAttach() 与Activity建立关联时调用 onCreateView() 创建视图加载布局时调用 onActivityCreated() .
2020-08-27 14:24:40
135
原创 Activity生命周期
onCreate() 创建Activity时触发,执行基本启动逻辑,例如进行加载布局,数据绑定、关联ViewModel,处理savedInstanceState onStart() Activity对用户可见时调用,此方法会快速执行完成 onResume() Activity与用户交互时调用,此时Activity位于栈顶,将一直此保持状态,直到某些事件发生,使焦点远离应用 onPause() Activity不再位于前台,可在此处释放系统资源,不要执行冗长的操作,
2020-08-27 11:56:08
64
原创 层序遍历二叉树
public List<List<Integer>> levelOrder(TreeNode root) { List<List<Integer>> result = new ArrayList<>(); if (root == null) return null; Queue<TreeNode> queue = new LinkedList<>(); que.
2020-07-27 11:29:11
75
原创 数据结构与算法之美【总结笔记】 -- 队列
先进先出,就是典型的“队列”。队列只支持两个基础操作:入队enqueue(),放一个数据到队尾,和,出队dequeue()从队列头部取一个元素。队列和栈一样,也是一种操作受限的数据结构。队列可以用数组实现,也可以用链表实现。用数组实现的队列叫顺序队列,用链表实现的队列叫链式队列。在实现队列这中数据结构的时候,需要两个指针,一个head指针,指向队头,一个tail指针,指向队尾。...
2020-01-31 13:40:46
128
原创 数据结构与算法之美【总结笔记】 -- 栈
当某个数据集合只涉及一段插入和删除数据,并且满足后进先出、先进后出的特性,我们就应该首选“栈”这种数据结构。如何实现一个栈:栈即可以用数组来实现,也可以用链表来实现,实现push和pop方法。入栈和出栈的时间复杂度为O(1),空间复杂度为O(1)对于支持动态扩容的栈,起均摊时间复杂度和空间复杂度也是O(1)栈在函数调用中的应用:函数调用栈:操作系统给每个分配了一块独立的...
2020-01-10 10:39:32
100
原创 数据结构与算法之美【总结笔记】 -- 链表 - 如何写出正确链表代码
1.深入理解指针或者引用,java中为引用,即理解下面的话将某个变量赋值给指针,实际上就是将这个变量的地址赋值给指针,或者反过来说,指针中存储了这个变量的内存地址,指向了这个变量的内存地址,指向了这个变量,通过这个指针就能找到这个变量。2.警惕指针丢失和内存泄漏(c,c++)在进行插入和删除的操作的时候,操作的都是指针,而指针又很抽象,代码不规范的话,极容易出现逻辑异常,指针丢失的...
2020-01-02 23:34:44
136
原创 数据结构与算法之美【总结笔记】 -- 链表
链表与数组是想对的一种数据结构链表的特点为:内存不连续,每个节点存有下一节点的地址(双向链表还需要存储前一节点的地址),以头结点的地址作为链表的基地址,尾节点指向空地址。延伸:尾节点指向头结点,形成循环链表。每个节点存储前一结点的地址,形成双向链表。每个节点存储前一结点的地址,尾结点指向头结点,形成循环双向链表。因为每个节点都需要额外的空间存储下一节点的地址,所有链表所占的空间更大,但...
2020-01-01 17:46:02
147
原创 数据结构与算法之美【总结笔记】 -- 数组
数组是一种线性的数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。数组中存储的数据,地址是连续的,所以支持随机性访问时间复杂度为O(1);由于需要保持地址的连续性,所以在对数组进行插入和删除的时候,需要对目标数据之后的所有数据进行地址移动的操作,此操作的时间复杂度,最好是O(1),最坏是O(n),平均是O(n)。针对此问题可采取的解决办法举例:插入操作:如果此数组...
2020-01-01 15:05:10
119
原创 数据结构与算法之美【总结笔记】 -- 复杂度分析
1.为什么进行复杂度分析不同运行环境下,由于硬件的不同、软件版本的不同,并发数不同等待原因,同一代码的运行时间可能相差极大,所以,测试环境下的运行效率虽然直观,但是不能完全信任,所以还需要可靠的理论来支撑。时间复杂度和空间复杂度的分析,就是对于代码运行效率的抽象,不受运行环境影响,只面向巨大的数据量分析,具有极高的价值。2.复杂度的表示方法大 O 复杂度表示法因为无法知道每一行...
2019-12-31 23:04:51
122
原创 代理小例子
代理的作用:可以在不修改别代理对象代码的基础上,通过扩展代理类,进行一些功能的附加与增强。·接口public interface Subject { void doSomeThing();}·真实类public class RelSubject implements Subject{ @Override public void doSomeThing()...
2019-12-17 09:58:00
297
原创 多线程的四种实现方式
参考:https://www.jianshu.com/p/b8197dd2934chttps://www.cnblogs.com/felixzh/p/6036074.htmlimport java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.c...
2019-12-05 13:40:38
178
原创 注解小例子
import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;import java.lang.reflect.Field;publ...
2019-12-03 11:52:08
122
原创 父类子类代码块的加载顺序
public class test2 { public static void main(String[] args) { Son son = new Son(); }}class Parent{ { System.out.println("父类代码块"); } static{ System.out.println("父类静态代码块"); } Parent(){...
2019-12-03 10:48:16
128
原创 Collections Comparable Comparator 工具接口的使用例子
import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;import java.util.Random;public class test { public static void main(String[] args) {...
2019-12-03 10:36:43
87
原创 Linux 软件包管理
软件包分类:源码包 -》脚本安装包(C语言源代码) 二进制包 -》 RPM包、系统默认包(编译后的包,看不得源代码)RPM包管理 -- rpm命令管理包名:httpd 包全名:httpd--------------.rpm安装和升级时用包全名查询、卸载使用包名这种安装很麻烦,需要一步步解决依...
2019-12-01 19:45:35
237
原创 Linux命令
权限管理命令:chmod -- 更改目录rwx权限 chmod ochown -- 更改文件所有者chown user file 更改file所有者为rootchgrp -- 更改文件所属组chgrp usergroup file 更改文件所属组为usergroupumask [-S] -- 显示文件的权限umask 查看当前目...
2019-11-28 16:49:52
74
原创 在一组数据中匹配是否含有某数据
import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class test { public static void main(String[] args) { List<String> sList = new ...
2019-11-14 13:46:17
529
原创 盛水最多的容器
int maxResult = 0; int l = 0; int r = height.length - 1; for(int i = 0; i<height.length; i++){ maxResult = Math.max(maxResult, Math.min(height[l],height[r])*(r-l)); if(height[l] &g...
2019-11-10 15:17:34
88
原创 判断回文数
public boolean isPalindrome(int x) { String num = x+""; int len = num .length(); for (int i = 0; i <= len/2; i++) { if(num.charAt(i) != num.charAt(len-1 - i)){ ret...
2019-11-10 15:16:34
74
原创 字符串转换整数 (atoi)
class Solution { public int myAtoi(String str) { str = str.trim(); if("".equals(str))return 0; if (!"+-0123456789".contains(str.charAt(0) + "")) return 0; if(str.length()==1...
2019-11-07 21:53:05
98
原创 整数反转
public static int reverse(int x) { int sign; boolean signBoolean; if (x >= 0) { sign = x; signBoolean = true; } else { sign...
2019-11-05 20:09:52
86
原创 Z字形变换
问题描述: /** * * @param s 字符串 * @param numRows 行数 * @return 行遍历 */ public String convert(String s, int numRows) { int sign = numRows; int len = s...
2019-11-04 21:45:59
109
原创 最长回文子串
import static sun.swing.MenuItemLayoutHelper.max;/** * 最长回文子串 */public class test { public static void main(String[] args) { System.out.println(longestPalindrome("asaa")); }...
2019-11-04 20:29:00
85
原创 springboot-服务端-百度api-对客户端ip定位
先获得百度API秘钥和查询连接 --》https://blog.csdn.net/weixin_45395810/article/details/100779263工具类:1. 获得客户端ipimport javax.servlet.http.HttpServletRequest;import java.net.InetAddress;import java.net.Unkno...
2019-09-14 09:26:37
433
原创 Springboot使用solr
pom中引包 <!-- solr --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-solr</arti...
2019-09-14 09:14:37
316
原创 百度API--通过ip地址定位
1. 去百度地图开放平台,注册成为地图开放平台开发者,连接http://lbsyun.baidu.com/index.php?title=webapi2. 创建应用,获得AK3. 选择相应文档查看使用方法。4.进入后查看文档获得url,测试得到json地址获得的汉字信息是Unicode编码,可以转成中文...
2019-09-13 22:54:08
4032
原创 Springboot整合PageHelper
pom中引包 <!--pagehelper--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> ...
2019-09-12 15:34:55
74
原创 solr-中文拼音检索配置
solr-中文拼音检索需要jar包:1. ik-analyzer-solr7-7.x.jar2. pinyinAnalyzer4.3.1.jar3. pinyin4j-2.5.0.jar把以上三个jar包放进F:\Program Files\solr-8.2.0\solr-8.2.0\server\solr-webapp\webapp\WEB-INF\lib在conf文件夹下的m...
2019-09-12 15:22:59
509
原创 HTML
推荐学习网站:http://www.w3school.com.cn/标签:以<开始,以>结束标签是成对出现的,结束标签有/关键字即为名字标签需要嵌套字节数标签不能嵌套其他标签标签的属性写在标签内 属性的写法 key=value<head></head>为配置,不显示补充:用iframe 内联框架,在一个页面中嵌...
2019-07-25 21:27:05
67
原创 PL/SQL基础语法 (视图、序列、过程、游标)
视图:视图是表现数据的逻辑子集或数据的组合。视图是基于表或另一视图的逻辑表,一个视图并不包含真实的数据,他提供了另一个视角查看或改变表中的数据。使用PL/SQL dev 创建视图(代码实现)create [or replace] 视图名[(视图内列名1,列名2, 列名3…)] as select 列名 from 表 ;(可以包含子查询和表连接)单个表的视图为简单视图,涉及多表的为复杂视图...
2019-07-24 14:59:48
906
原创 PL/SQL 基本语法 (数据类型,异常处理,循环语句)
变量类型声明:常用变量类型binary_integer: 整数,主要用来计数而不是用来表示字段类型,效率高number: 数字类型char: 定长字符串varchar2: 变长字符串date: 日期long: 长字符串,最长2GBboolean: 布尔类型,可以取值为ture、false和null值,一定要给初值,无法打印–特殊变量声明:%type用表内字段类型或者变量t...
2019-07-22 23:03:57
169
原创 pl/sql dev创建表--表的增删改--唯一键主外键的设置
新建表1.右键点击Tables–》新建2.填写表名3.填写列名,设置类型,是非非空,默认值向表中填写数据a.右键表名–》编辑数据—》直接填到表中b.代码插入INSERT INTO table[(column1, column2…)] VALUES (value1,value2…);--b.1不带列名直接填写,但是必须照顾到没一列,不想填写则用null代替inser...
2019-07-19 15:34:28
2420
转载 sql语句执行顺序
应该是select所有的在过滤。(8) select (9) distinct (11) <top_specification> <select_list>(1) FROM <left_table>(3) <join_type> JOIN <right_table>(2) on <join_condition>(4)...
2019-07-19 13:07:28
69
转载 orcl基础笔记--多表查询和组函数
组函数概念:也叫聚合函数,多行输入一行输出。普通函数是一行输入一行输出常见五种组函数:MAX() 求最大值 求员工的最大工资 select max(sal) from emp;MIN() 求最小值 求员工的最小工资 select min(sal) from emp;AVG() 求平均值 求部门编号为10的平均工资 selec...
2019-07-19 13:02:20
183
转载 orcl基础笔记--单行函数
·- 字符处理函数数字函数数字函数Round(参数1,[参数2])功能:四舍五入,参数2可选,参数2表示保留几位小数round(24.764, 2) --> 24.76 ;Trunc(参数1,[参数2])功能:截断数字(直接忽略),参数2表示截断到的小数位,如果参数2忽略则默认为0trunc(24.764, -1) --> 20 ; · 日期函数...
2019-07-17 13:23:45
297
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人