- 博客(24)
- 收藏
- 关注
原创 java位运算
本篇的主要目的想要把java位运算的相关知识进行一个总结,主要包括表示方式、位运算时移位的方式一、表示方式首先学过计算机的我们都应该知道计算机采用反码的方式对数据进行表示,同时java的所有数据类型都是有符号的数据表示形式。即利用最高位作为符号位,正数时为0,负数时为1。我用了下面的这种方式验证。public static void comfirm() { int cnt = 1;
2016-06-22 22:27:30
310
原创 利用注解初始化View对象
为了避免每次使用Activity时都要利用findViewById一个个初始化语句,所以想利用注解来减少一些重复劳动一、创建一个注解:基本需要一个id即可以初始化一个View对象/** * Created by chen on 2016/5/20. * @Target 设置目标为字段 * @Retention 设置作用域为运行时 */@Target(ElementType.F
2016-05-20 22:24:36
356
原创 可以填空的TextView
最近学习android的时候,突然想怎么实现类似于填空题的界面,突然有了思路,共享一下。效果图如下实现思路:将一个TextView使用FrameLayout进行包装,然后在需要填空的字符串处使用EditText进行覆盖即可;主要的点就是如何确定需要填空的字符串的位置,这里使用TextPaint测量文本的宽度和高度,利用Layout获取每行的字符的宽度然后进行计算源码如下pu
2016-02-21 17:17:03
827
原创 截取View当前的图像保存成View
方法一:通过View.DrawCacheEnable和View.getDrawCache方法来获取,需要注意的是需要调用measure和layout方法才能获取.public void ViewHot(View view) { View src = getLayoutInflater().inflate(R.layout.view_test, null);
2016-02-20 20:42:09
425
转载 继承classLoader加载一个class文件demo
public class Loader extends ClassLoader{ private String classPath; private String classname="Test"; public Loader(String classPath){ this.classPath=classPath; } @Override protected Class f
2016-01-22 16:00:03
860
原创 drag and drop学习
首先由文档中介绍所说,drag and drop手势是用于将一个View中的数据放到另一个View中,同时还可以用于UI相关的动作其次其应用的步骤为:首先新建一个类实现View.OnDragListener,该类用于drag and drop事件发生时的回调,然后再新建一个类继承自View.DragShadowBuilder用于设置动作发生时随拖动而移动的阴影图像,最后设置监听,然后在当你认为
2015-11-21 09:47:12
591
原创 模仿自定义View的一个小例子
先看效果图,不会做动图就是几个圈,能够根据手指触摸的位置来决定绘制粉红色圈的个数代码如下public class BitmapCircleView extends View { private Bitmap backBitmap;//背景图片 private Bitmap backColorBitmap;//背景圆的背景 private Bitmap c
2015-10-20 22:05:13
339
原创 利用多张图片制作轮播背景
实现思路:首先自定义SurfaceView作为图片的容器,然后自定义一个类来存储图片、图片高度、当前绘制的位置,然后将这些信息放入一个List中,然后将其作为一个循环队列即可SurfaceView的实现如下主要在于第一张已经从屏幕滚出后将其移到List 的最后等待循环进行绘制播放public class BackSurfaceView extends SurfaceView imp
2015-10-08 16:47:43
1041
原创 Jni之在c++中调用java代码
第一步:完成java代码public class JniMain { private static int staticIntField=300; static{ System.loadLibrary("JniFunc"); } public static native JniTest createObject(); public static void main(Stri
2015-09-17 18:58:44
573
原创 JNI初体验
一、使用过程:编写java代码->编译java代码->利用javah 命令生成生成相应的c/c++头文件->编写c/c++代码->利用vs命令制作dll共享库->运行java程序二、实例使用(1)编写java代码public class JNITest { //声明本地方法,将在cpp文件中实现 public native static void dispHelloWor
2015-09-14 21:24:20
383
原创 JDBC中使用存储过程
public class Procedure { public static void getProcedureInfo(Connection conn){ try { DatabaseMetaData metaData=conn.getMetaData(); System.out.println("数据库相关信息:"); System.out.println("数据库名称
2015-07-31 07:43:27
552
原创 JDBC连接数据的基本使用
public class LinktoSqlSever {//PrepareStatement可以使用?作为占位符,在得到结果集之前设置相应参数,为空也要使用相应的set方法,可复用 public static final String drivername="com.microsoft.sqlserver.jdbc.SQLServerDriver"; private static final
2015-07-30 12:42:42
366
原创 JDBC连接数据库
注意引入的是sqljdbc4.jar包public class LinktoDatabase { static final String DbDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; static final String connectionstr="jdbc:sqlserver://127.0.0.1:1433;Dat
2015-07-26 13:23:25
329
原创 java多线程基础学习2
一、Executor框架1.Executor interface:此接口基于生产者-消费者模式,提供了一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节、调度等)分离开来的方法,可以对其任务提交方法进行重写使得任务提交后能够立即被运行、或者任务的连续性//使用一个类来协作Excutor来使得任务被串行化class SerialExecutor implements Execu
2015-07-23 10:17:19
457
原创 Java多线程基础学习
Java并发初探:(1)注意复合性操作带来的数据修改的异常,对于一般的计数器之类的变量,可以采用位于java.util.concurrent.atomic包中的原子性对象(2)变量的可见性:当有多个线程对一个变量进行读写操作时,其中一个线程对变量的更改可能会因为寄存器缓存等原因使得其他线程无法得到更新的数据,可以使用volatile关键字来声明变量(3)利用线程封闭来实现线程安全:
2015-07-19 08:40:19
350
转载 SurfaceView的使用基础
1.SurfaceView的基本使用模板public class SurfaceViewWriter extends SurfaceView implements SurfaceHolder.Callback, Runnable { SurfaceHolder holder; boolean isRunning; Thread drawThread; Canva
2015-07-17 16:33:16
472
原创 Convert Sorted List to Binary Search Tree
题目要求将一个已排序的链表置换成一个平衡的二叉树开始看到时候第一时间想到的就是二叉树中序遍历输出就是一个有序序列,,但是根据这个想了一会儿没有想到什么思路(唉.......),后来想到高度平衡又想起了以前数组构造二叉树的方法,有了思路,就是每次取中间节点,然后递归构造两边的子树,寻找中间指针的方法也很自然的想到使用快慢指针来做。代码如下/** * Definition for singl
2015-05-26 18:45:49
376
转载 Linked List Cycle
题目:给你一个单链表链表,判定该链表是否存在循环链表于其中我开始是想通过遍历,如果没有next域为空肯定是循环链表,但是问题是我跟本不知链表的终点,又想了一些其他的方法都没有可行性,又不想用双重循环来判定后来找到了下面的方法,利用快慢指针,如果是循环的链表,二者肯定会在某一点相遇,代码如下public boolean hasCycle(ListNode head) {
2015-05-24 21:06:16
91
原创 android trainning(4)
一、使用剪贴板在activity间传递信息public class MainActivity extends Activity { EditText text; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState)
2015-05-24 08:55:39
420
原创 Reorder List
Given a singly linked list L: L0→L1→…→Ln-1→Ln,reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→…You must do this in-place without altering the nodes' values.For example,Given {1,2,3,4}, reorder it t
2015-05-21 21:23:01
353
原创 android数据库的基本回顾
本篇主要想回顾一下android数据库的基本使用及几个注意点:一、在我测试的时候,只要设置了自动了增长的id键,就无法设置其他的字段为主键,或者将id和其他字段一起设置为主键,不知道是硬性的规定还是我SQL建表语句的问题二、对于自动增长的id键有的书说必须要,有的书说可以不要,我试了一下,都可以,而且没有id时,可以设置多个主键,但是android讲义中说到当使用SimpleCursorA
2015-05-13 17:52:20
427
转载 关于内置内存卡与外置内存卡的路径获取
从论坛中寻找到的一种方法,具体可以参见论坛地址http://bbs.youkuaiyun.com/topics/390667153,源码如下public class MainActivity extends Activity{ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInsta
2015-05-12 15:36:44
502
原创 Unique Paths II (DP)
题目:Follow up for "Unique Paths":Now consider if some obstacles are added to the grids. How many unique paths would there be?An obstacle and empty space is marked as 1 and 0 respectively in t
2015-02-25 22:37:36
328
原创 Rotate Array
原题:Rotate an array of n elements to the right by k steps.For example, with n = 7 and k = 3, the array [1,2,3,4,5,6,7] is rotated to [5,6,7,1,2,3,4].根据题目的要求O(1)的空间,多次逆置数组class Solution {pub
2015-02-24 17:01:18
311
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人