- 博客(11)
- 资源 (2)
- 收藏
- 关注
转载 HashMap中的“死锁”是怎么回事?
说一说HashMap中“死锁”是怎么回事HashMap是非线程安全,死锁一般都是产生于并发情况下。我们假设有二个进程T1、T2,HashMap容量为2,T1线程放入key A、B、C、D、E。在T1线程中A、B、C Hash值相同,于是形成一个链接,假设为A->C->B,而D、E Hash值不同,于是容量不足,需要新建一个更大尺寸的hash表,然后把数据从老的Hash表中迁移到新的Hash表中(refresh)。这时T2进程闯进来了,T1暂时挂起,T2进程也准备放入新的key,这时也发现..
2021-05-08 13:59:53
2053
原创 android闪屏+功能引导页
前言很长一段时间没写博客了,再不写点东西真说不过去,把工作上的一些有价值的东西整理出来分享,在当下还有点时效性,不然迟早会烂在肚子里的。还记得之前小巫有个开源计划是想实现一个星期开发app,现在把它拾起来,计划没有实行起来跟我那懒惰的身躯有关,任何伟大的事情都需要强大的执行力才能实现,慢一点没关系,能创造点东西就是值得的事情。本篇博客先介绍一个app最常见的特性,就是新功能属性介绍和启动屏...
2021-05-08 13:53:22
251
转载 HashMap的工作原理
HashMap的工作原理 hash表存储利用到了数组以及链表,当键值对数据传入时,系统先将key值取出,利用hash函数转换成hash值,再运用散列法(此处用除法散列法取余),得到需要存入数组的下标index; 得到数组下标后,我们可以将key-value一起存入到数组中。 当使用index进行存储键值对的时候,如果此下标已经有了数据,那么将通过equals方法比较两个hash值是否相同,如果相等,再比较两个键值对key是否相等...
2021-05-08 13:52:45
220
原创 C#WPF+EF CodeFirst连接SqLite实现增删改查
1、安装EntityFramework2、安装System.Data.SqLite3、安装SQLite.CodeFirst4、新建Context文件,名字随意5、新建SqLiteConfiguration6、新建实体类Students,UserStudents类User类7、新建窗体大致是这几个流程,我也是初学者,刚踩完坑。下载地址:链接:https://pan.baidu.com/s/1L2VDRW9Kto0QQvGgzIOf5.
2020-12-11 15:58:11
2230
6
原创 FragmentTabHost实现底部导航栏
第一步:布局文件activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-a...
2018-11-01 17:16:35
304
原创 viewpager 第一次启动导航页
以三个页面为例给大家介绍一下第一步先新建三个XML布局文件1,viewitem1.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="ma...
2018-10-28 20:43:49
340
原创 Android防误触,再按一次退出
先定义一个全局变量private static long exitTime = 0;public void onBackPressed() { if ((System.currentTimeMillis() - exitTime) > 2000) { ToastUtil.show(MyApplication.getContext(),"再按一次退出!");...
2018-10-28 19:03:41
1049
原创 Toast的封装,连续重复点击只显示一次
public class ToastUtil { public static Toast mToast; /** * 传入文字 */ public static void show(Context context, String text) { if (mToast == null) { mToast = T...
2018-10-28 18:50:18
691
原创 Android基础
闪屏界面 、关键代码 private Context context;private Handler handler = new Handler();@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //取消状态栏 ...
2018-10-18 16:38:48
278
原创 FragmentTabHost点击按钮一个fragment中的按钮跳到另一个Fragment
MainActivity中写://tab是跳到第几个fragment的角标(同数组角标)public void setTab(int tab){ tabHost.setCurrentTab(tab);}fragment中写:MainActivity mainActivity= (MainActivity) getActivity();mainActivity.setT...
2018-10-18 16:38:20
625
android开发最基础的部分
2018-10-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人