自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 自定义EditTextView 限定数字格式和最大值

自定义EditText,方便处理数字类型数据的输入

2022-12-06 16:11:55 404 1

原创 Dagger2 的简单使用

dagger2 简单使用

2022-11-01 14:34:50 187

原创 LiveData简单使用

LiveData

2022-10-24 16:14:44 295

原创 Android Q 文件存储简单使用,以txt文件为例

android Q 文件存储

2022-09-21 17:35:28 828

原创 Gradle 自定义插件

自定义插件的简单开发

2022-07-05 17:19:02 721

原创 android MQTT的简单使用

一.windows10 安装mosquitto服务官网下载地址 http://www.eclipse.org/paho/components/tool/,下载好window对应版本后安装,最好是配置一下环境变量。安装成功之后可以在任务管理器-服务界面看到mosquitto。cmd以管理员权限打开命令行窗口1,打开mosquitto服务 "net start mosquitto"cmd以管理员权限打开命令行窗口2,订阅主题 test "mosquitto_sub -t...

2021-12-28 11:04:28 3438

原创 AlertDialog用法

View popView = LayoutInflater.from(this).inflate(R.layout.pop_select_gun, null); AlertDialog alertDialog = new AlertDialog.Builder(this).create(); alertDialog.setCancelable(false); //设置点击返回不可取消 alertDialog.setCanceledOnTouchOutside(false);//...

2021-12-27 18:09:49 92

原创 ArrayList和HashMap

ArrayList1.ArrayList继承了List/RandomAccess/Cloneable/serializable 接口,内部维护一个数组用来存放对象。2.RandomAccess接口,用于标明实现该接口的List支持快速随机访问,也就是For循环速度会比用iterator要快。LinkedList没有实现该接口,适合用iterator来遍历。3.ArrayList 初始容量是10,每次扩容增加一半HashMap1.默认长度是16,每扩容一次加倍。2.底层结构是数组...

2021-11-01 15:43:40 231

原创 Java 内存分区 及 GC相关

一.java内存模型方法区和堆中的对象,所有线程都可以访问。每一个线程都拥有自己独立的虚拟机栈、本地方法栈和程序计数器。二.虚拟机栈线程每执行一个方法,就会在虚拟机栈中创建一个栈桢,虚拟机栈中包含所有正在执行的方法。栈桢的包局部变量表,操作数栈,动态链接和返回地址1.局部变量表: 用于存放执行方法的参数和定义在方法体内的局部变量,本质是一个数组2.操作数栈:它是一个后入先出栈,是变量进行计算的容器3.动态链接 :每个栈桢都包含一个指向运行时常量池中该栈所...

2021-10-28 16:55:40 94

原创 Java 虚拟机中类加载过程 加载器的双亲委派模型

一.java 虚拟机中类加载过程 加载 ——》链接 ——》初始化加载JVM 虚拟机将.class文件读入内存,并为之创建一个class 对象,任何类被使用时系统都会为其创建一个唯一存在的class对象。这个class 对象描述了这个类创建出来的对象的所有信息,包括构造方法,成员变量,成员方法等。.链接阶段包括验证、准备以及解析三个阶段。验证阶段,主要目的是确保被加载的类满足java 虚拟机规范(包括格式验证、语义验证、操作验证等),不会

2021-10-27 17:28:48 72

原创 合并两个有序的单向链表

1.首先定义一个单向链表结构public class SingleLinkedList{ private int size; //链表节点的个数 private MyNode head;//头节点 public SingleLinkedList(){ size = 0; head = null; } //链表的每个...

2019-05-30 15:17:52 437

转载 视频加密

二、将视频文件的数据流前100个字节中的每个字节与其下标进行异或运算。解密时只需将加密过的文件再进行一次异或运算即可。加密解密方法如下:private final int REVERSE_LENGTH = 100;/** * 加解密 * * @param strFile 源文件绝对路径 * @return */private boolean encrypt(Str

2017-12-28 09:41:40 704

原创 自定义注解

非标注型注解,通过反射对程序的运行产生影响自定义一个注解@AnnoTest@Target(value = {ElementType.METHOD, ElementType.FIELD}) //声明注解作用元素的类型@Retention(RetentionPolicy.RUNTIME)//指示注解要保留多久,默认为RetentionPolicy.Class,需要设置为Run

2017-10-08 17:47:29 158

原创 java反射实现动态代理模式

代理模式的作用是:为其他对象提供一种可以控制的访问方式,代理的角色:1.抽象角色  声明真实对象和代理对象需要实现的接口;2.代理角色  代理对象内部含有对真实对象的引用,从而可以操纵真实的对象,同时代理对象提供与真实对象相同的接口,以便在任何时刻都能替代真实对象,同时代理对象可以在执行真实对象操作时,附加其他的操作,想当于对真实对象进行封装。3.真实角色  实现抽

2017-10-08 14:54:48 854

原创 文字长度可变跑马灯效果

布局文件属性设置        android:id="@+id/tv_text"        android:layout_width="90dp"        android:layout_height="wrap_content"        android:ellipsize="marquee"        android:focusable="true"

2017-10-07 20:59:46 423

原创 反射的基本使用

反射       类是具有相同属性或者行为的一类事物,那么类本来也可以再被抽象,因为类们也有共同的 属性和行为,比如都有属性、构造器、方法,所以把类们又抽象成了一个类Class. 得到Class类的对象1.通过Class.forName(类的全路径); 2.通过类的名字打点,如User.class; 3.通过该类的对象调用getClass()方法。   Fi

2017-10-07 20:16:22 168

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除