- 博客(24)
- 收藏
- 关注
原创 mac gradlew 命令 zsh: command not found: gradlew
./gradlew主要因为mac下执行当前目录下的命令需要在前面加上“./”,否则会到环境变量下找相应命令然后可能出现The operation couldn’t be completed. Unable to locate a Java Runtime.在.bash_profile添加export JAVA_HOME=/Applications/Android\ Studio.app/Contents/jre/Contents/Home然后terminal 输入source .bash_prof
2021-09-09 19:34:30 3813
原创 非全屏dialog 软件盘弹出问题
问题:adjustResize 时输入框被遮盖 (调整屏幕的大小以便留出软键盘的空间)adjustPan 时上面布局被挤压(将布局顶起 以显示软键盘)解决:把dialog设置成全屏 背景色透明就可啦
2021-02-01 11:18:33 157
原创 android tablayout setCustomView后不能平铺整个屏幕
添加tab在 setupWithViewPager 之前setCustomView 在 setupWithViewPager 之后 就行了ps: tabInlineLabel:设置图标和文件的方向(默认为false 图标和文字上下 true 左右)
2021-01-08 10:57:03 370
原创 反射
Class clz = null; try { clz = Class.forName("test.Book"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } Method[] methods = clz.getMethods(); //获取所有的公开方法 for (Method me...
2020-12-10 17:27:09 77
原创 165
split . 时要转义public static int compareVersion(String version1, String version2) { String []a =version1.split("\\."); String []b = version2.split("\\."); int l = a.length; if( b.length > l) l = b.length; long va = 0; long vb = 0; for(int..
2020-11-25 14:18:47 68
原创 55
自己思路:0是关键,有0的情况才会导致跳不过去,从0开始分析,情况很多很复杂。题解思路1:从后向前,出现0距离加1,对比前一个数字是否能跳过0 public static boolean canJump(int[] nums) { //[1,0,3,0,0,1,4] int distance = 0; for(int i = nums.length-2;i >= 0;i--) { System.out.println("i "+ nums[i]+" d.
2020-11-05 10:21:51 70
原创 941
public static boolean validMountainArray(int[] A) { if(A.length < 3) return false; int a = A[1]-A[0]; if (a <= 0) { System.out.println("a <= 0"); return false; } if(a > 0){ int mi.
2020-11-03 17:38:15 108
原创 volatile
多线程:原子性(要么同时完成,要么同时失败),可见性,有序性volatile:可见性,有序性;(不能用在多线程执行类似 i++非原子操作)可见性:当一个变量被声明为volatile时,线程在写入变量时不会把值缓存在寄存器或者其他地方,而是会把值刷新回主内存。当其他线程读取该共享变量时,会从主内存重新获取最新值,而不是使用当前线程的工作内存中的值。有序性:禁止指令重排volatile原理:内存屏障;内存屏障使得 CPU 或编译器在对内存进行操作的时候, 严格按照一定的顺序来执行,...
2020-11-03 17:32:03 135
原创 https流程
eg:https访问X网站客户端访问服务端下载下来证书根据证书获得公钥,浏览器算计生成随机密钥用公钥将随机密钥加密后发送给服务器服务端用私钥解密随机密钥,将其内容用随机密钥进行对称加密客户端拿到后用随机密钥进行解密...
2020-11-02 18:08:38 132
原创 rsa
一共要用到p、q、N、L、E、D六个数据:p、q: 首先取两个足够大的质数p、qN: 令N=p*qL: L是(p-1)与(q-1)的最小公倍数E: 使得E与L互质且1<E<LD: 使得(D*E)%L=1且1<D<L(E,N)为公钥,(D,N)为私钥加密过程:密文=(明文^E)%N解密过程:明文=(密文^D)%NP = 11 q = 7N = 77L = (10)(6) =30E = 13D = 7密文 = 7^13%77 =
2020-10-28 15:47:27 152
原创 堆栈
堆和栈堆 存的是实体,一般生命周期长,由gc垃圾回收算法回收栈 存的是变量,生命周期较短,结束后自动释放Person p = new Person()new Person() 存在堆中 地址0X0001p 存在栈中 p = 0X0001基本数据类型和String一般是存到栈中,其他是存到堆中int a = 3 存在栈中int a[] = new int[3] a存在栈中 3个int数据存在中String a = “abc” 栈String a = new String(“abc
2020-10-28 11:00:07 92
原创 2020-09-10
动态更改view的gravityRelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) mBinding.tvLockConf.getLayoutParams();layoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL);mBinding.tvLockConf.setLayoutParams(layoutParams);
2020-09-10 10:35:16 65
原创 view设置上边距为状态栏高度
//获取状态栏高度private int getHeight(){int statusBarHeight1 = -1;//获取status_bar_height资源的IDint resourceId = getResources().getIdentifier(“status_bar_height”, “dimen”, “android”);if (resourceId > 0) ...
2019-11-01 16:53:04 827
原创 ScrollView
ScrollView的子元素只能有一个,所以得增加一个LinearLayout布局,把其他按键放在这个LinearLayout中,那么ScrollViewd的子元素就只有一个LinearLayout了,而LinearLayout的子元素不限制。...
2019-09-01 19:57:11 107
原创 使用rxjava+retrofit+rxlifecycle+mvp的一些总结
最近用了这套框架写了个软件,有兴趣的可以看下https://github.com/CY12/MyWeather.git一、命名规范自己的命名规范有问题,写完才注意到,项目里有的rename出问题,也就没改,下次写程序注意。命名规范就和写作文条理清晰是一个意思,好的命名别人浏览一下就大致知道你写的是干啥的,将来自己改动也好找,节省时间精力。包名小写、单词间连续无间隔,言简意赅 e...
2019-05-15 00:13:41 841
原创 数组为什么要从0开始思考的问题
数组为什么要从0开始,从1开始不是更好吗。二进制00,01,11,00代表一个值,早期资源匮乏所以将00也用上,就是对资源的利用。仔细想一想操作系统也是对资源的利用,我们学的很多东西都是对资源的利用,比如算法就是。旅行者1号,Intel4004,0.108MHz,68KB内存 1977年工作至今在天才在左疯子在右中数据储存,将地球上所有的资料都以一串特殊的二进制储存,然后在飞船上标记一个点...
2019-05-13 17:25:30 456
转载 关于同步异步的例子理解
转https://www.cnblogs.com/weiyi1314/p/6723913.html同步(Sync)所谓同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执行后续操作。根据这个定义,Java中所有方法都是同步调用,应为必须要等到结果后才会继续执行。我们在说同步、异步的时候,一般而言是特指那些需要其他端协作或者需要一定时间完成的任务。简单来说,同步就是必须一...
2019-04-17 19:29:51 1094
原创 使用RecyclerView出现的一些问题
1.在RecyclerView中使用SharedPreferences时无法调用使用RecyclerView要用适配器,而适配器是一个普通的类,和Activity并非等同,SharedPreferences用是Context类的方法,要在Adapter中调用,就要获取当前的Context,通过Context调用。2.在网络请求,返回数据用RecyclerView加载显示出来,发现Recycle...
2019-04-17 17:43:04 230
原创 Android中Intent使用
Intent分显示式ntent和隐式Intent 一丶 显示Intent二丶隐式Intentintent.addCategory("")用于添加其他Categoryintent调用系统内部应用,在Intent中传入系统默认action,然后用setDate传入要输入的信息。eg:调用系统内部浏览器...
2019-03-06 21:54:01 200
原创 android将其他活动设置为主活动
将主活动中 <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-fi...
2019-03-05 20:58:17 676
原创 用draw9patch.bat绘制图片
1.右键你选择的图片 找到Creat 9-Patch并打开2.保存,按默认的名字3.然后你会发现多出来一张图片,点击就可以制作9点图了4.做好后,将原先的图删掉,系统会自动替换新作的9.图...
2018-10-23 16:11:02 325
原创 java输出下标和相等的方阵。
输出下标和相等的方阵。例如当n=4时有以下两种排列方式public static void main(String[] args) { // TODO Auto-generated method stub int n=4,k=1; boolean up=true;//2-3的方向是向下。4-6的方向是向上,每完成一次就要改变一次方向 int [][]a=new int [n][n...
2018-10-09 20:30:52 2171
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人