自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

季科的博客

现在只是单纯的喜欢技术而已

  • 博客(46)
  • 问答 (1)
  • 收藏
  • 关注

转载 java基础算法学习之完全数的求解

这篇文章说说完全数的求解,这里我想说的是这个代码的思路,因为要实现这个功能的话,真的不难,完全数,就是所有的因子相加等于这个数,那么这样的数就被称为是完全数,这篇代码中的思想是在一个范围内,每次遍历一个数,然后保存两次这个数,一个用于是求因子,另一个求是否最后和为0,感觉如果是我第一次想的话,应该是想不到的。代码:package com.jk.perfectdemo;import ja

2016-04-30 14:48:01 3368 1

转载 java基础算法之随机数的产生

jk这篇代码写的是一段伪随机数的产生,通过两个变量和一个种子来得到一个和,然后在找一个base,得到的和除以base得到余数, 余数除以base就是我们求的随机数,大家看代码理一下就是了。代码:package com.jk.random;/** * * @author jk这篇代码写的是一段伪随机数的产生,通过两个变量和一个种子来得到一个和,然后在找一个base,得到的和除以ba

2016-04-30 13:44:21 285

转载 java之递推求解一维多项式

这篇文章说的是如何计算一个一维多项式的值,一维其实也就是包含一个变量的多项式,类似f(x)=ax^3+bx^2+cx+d   的形式,我们可以将上面的式子写成形如((ax+b)x+c)x+d这样很容易就看出了这个式子可以通过递推的方式来实现,代码:package com.jk.test;/** *  * @author jk,这段代码写的是如何计算一个一维多项式的值,一维其

2016-04-30 13:24:17 1201

原创 java基础查找之二分查找

这篇文章谈谈二分查找,二分查找的思想很简单,就是在一个已经排好序的数组里面,每次去中间的数来进行比较,这里我讲我编程的思路,首先while循环里面要是小于等于,如果是小于的话,那么当low和high相等的时候,那个数就找不到,然后当a[mid]package com.jk.binsearch;import java.util.Arrays;/** * * @author jk,这

2016-04-30 12:03:25 508

转载 java排序之归并排序

归并排序的思想简单,但是实现起来有点难,思想就是通过将数组分开,然后将数组合并起来,但是,注解的问题我过一段时间补上,感觉对递归理解的还不够透彻。对了以下的代码来自百度百科代码:package com.jk.merge;import java.util.Arrays;/** * * @author jk 这段代码来自百度百科,这个是归并排序,归并算法的思想很简单,可能是我对递归理

2016-04-29 19:40:32 235

转载 java排序之堆排序

这篇文章的代码叙述的是堆排序的构成,堆排序我认为最重要的就是理解,代码,真的简单的,这里我仅谈谈我的思路,将一个数组想想成一棵树,然后首先构建一个大根堆,然后将这个大根堆的根借点和最后一个交互位置,然后后面不断的重复交换,构建大根堆的过程,然后就完成排序了啊,其实,这个和我之前几篇说的差不多,这个堆排序是基于选择排序的,每次选出最大的一个,然后交换,这个方法最主要的就是将这些数据分开来选择,然后结

2016-04-29 18:52:57 238

原创 android基础学习之viewpager初探

今天学了viewpager,通过viewpager和Sharedperference还有package管理器,做了一个项目的开机首启动的问题,就是第二次就会出现导航页了,但是程序更新以后又会再次出现:代码:package com.jk.viewpagerdemo;import java.util.ArrayList;import android.os.Bundle;imp

2016-04-29 16:55:47 289

原创 android基础学习之popupwindow

这篇文章说的是popupwindow的一个弹出和消失,其实也没有什么难度主要是有几个小的点子害怕以后忘记,所以写了篇博客,代码也很短就不介绍了,看看就懂了。代码:package com.jk.popupwindowdemo;import java.util.ArrayList;import android.os.Bundle;import android.app.Activity

2016-04-29 10:48:37 294

转载 java排序之快排

这篇文章来谈谈快排,最近有一种感觉,只要有规律可循的代码,分解成为两部分以后效率就会提高很多。代码思想如下 这个代码写的是快排,快排最主要的思维就是寻找一个分界值,大的放在一边,小的放在一边,然后递归分别处理大的和小的,          这里需要注意的是我们在移动游标是需要的是加上等于分界的值,否则的话如果有相等的值就会进入死循环,          很简单的来说,当以一个数为分界值

2016-04-29 09:39:31 11364 2

原创 android学习之4中引用

在android或者是java学习中存在4中引用,第一种是强引用,这种引用是不会被垃圾回收机制回收的,也是我们创建对象是默认的引用,第二种是软引用,这种引用是在内存不足的时候,如果被垃圾回收机制扫描到就会被回收,第三种是弱引用,这种引用只要被垃圾回收机制扫描到就会回收,第四种是虚引用,这种引用在创建后就被回收,这里的代码只演示了强引用和软引用,其它的2个和软引用的使用差不多。代码:packag

2016-04-28 19:53:13 439

原创 java排序之shell排序

之前的几篇关于排序的算法都是比较简单的排序,虽然不一定可以写出来,但是一眼就可以看懂,接下来的几篇的排序可能就需要仔细思考一下,或者画图描绘一下了,这篇文章讲的死shell排序,也叫增量排序,它的本质是插入排序,通过将数组数组的方式来将增加排序的速度,分组的方式第一次将数组的长度/2,第二次/4,当结果等于1的时候,那么将这个数组进行插入排序就完成了排序,当然分组时也是需要排序的,所以我认为这个和

2016-04-27 20:36:01 1845

原创 java简单排序之选择排序

这篇文章谈的是选择排序,选择排序就是第一次找出最小的,第二次找出第二小的......,然后依次和第一个,第二个交换,到了最后面,也就是排序完成了,可能理论有点绕,看看代码就清楚了。package www.jk.selectsort;/** * * @author jk 这段代码写的是选择排序,其实我个人来看,也是蛮简单的,第一层循环,数的个数,第二层循环,找出当前的循环体内的最小或者最大

2016-04-25 09:39:32 309

原创 java简单排序学习之插入排序

插入排序也是一个很重要的东西,我们通过现在我们想要插入的数和前面的比较,如果没有到最前面,或者当前的数一直大于或者一直小于(这取决于降序还是升序),那么我们就一直移动,如果找到了不符合条件的,那么就将我们需要的数插入到该下标的后一位。当然我们需要插入的数是需要提前保存的,当然,这里你可能还有点不清楚,当你看我的代码和每一步的注释应该就懂了。package www.jk.sort;/**

2016-04-25 09:28:54 284

原创 java简单排序之冒泡排序

几乎每一个刚开始学习编程的人都会学习冒泡排序,哎,学习了那么久,现在才写一篇冒泡排序,冒泡排序的大概思想就是有多少个数就执行多少次将最大的数或者最小的数放在最后或者最前,将最大或者最小的数放在最前或者最后的方式就是通过依次比较,好吧,直接贴代码了。package www.jk.bubble;/** * * @author jk * 这个代码主要是实现了冒泡排序,这个

2016-04-25 09:20:45 216

原创 java基础算法学习之概率算法

概率算法是以前一直没有接触过的算法,第一眼看见的时候真的觉得很厉害,这个算法的思想很简单但是运用好很难,大概就是将问题转化为几何图形,然后通过点的分布来求解我们需要的信息,这里的例子是求解π,画的图确实有点丑,大概就是以正方形的变长为1,圆形的半径为1,那么我知道知道第一象限圆的面积为π/4,然后正方形的面积为1,那么我们可以通过落入圆形中的点数占的比例来估计π的值,顺便提一句,这个算

2016-04-25 09:14:25 6884

原创 java基础算法学习之分治

这篇文章我们来谈谈分治算法,分治算法也就是将大的问题分解成为小的问题,然后依次求解,如果在一堆硬币里有1个假的硬币,那么我们可以堆硬币为偶数那么分成两堆,然后再质量小的那堆里面求解,如果硬币的个数为奇数,那么我们以中间的为分割,如果两堆相等,那么中间的就是假的,否则就和偶数的求解思路是一样的,然后依次算下去,直到找到假币为止,好吧,贴代码:package www.jk.divideandcon

2016-04-23 12:22:17 381

转载 android学习之绑定Service并与之通信

这篇文章的代码来自疯狂讲义本来打算今天写一篇关于aidl的文章的,但是感觉网上的代码都不是很能看懂,然后因为涉及到bindservice,然后就先写一篇bindservice的文章,稍后再添上使用aidl的关于进程间通信的文章如果Service和访问者之间需要进行方法的调用或者交换数据,那么久应该使用bindservice和unbindservice的方法启动,关闭service。Co

2016-04-22 20:18:15 588

原创 android学习之handler实现线程间通信

之前有一篇文章谈论过线程间通信,那里使用的是AsyncTask来处理的,使用异步任务处理最大的问题就是不可以通过实现主线程向子线程发送消息,当然第一个启动的时候传的i消息不算,今天我们来谈谈handler处理线程之间的通信问题,这里我有一张图来解释消息在进程之间的消息的传递,这里两个线程之间的handler是同一个对象,这里需要说明一些事情,在主线程中looper是默认工作的,而messagequ

2016-04-22 17:15:45 328

原创 android学习之SimpleAdapter

这篇文章我们来谈谈SimpleAdapter,ArrayAdapter就不谈了,因为感觉确实太简单了而且感觉在开发中也用不上,然后SimpleAdapter在开发中感觉可以简单的使用,而且本身也不是很难,至于BaseAdapter也会在后面的文章中谈论到。这里我们先谈谈MVC的设计把,一般来说M代码模型层,也就是数据的处理,在我们这篇文章中,也就是数据的准备,而V层也就是我们的显示层,也就是这篇文

2016-04-22 14:51:50 306

原创 java学习之注解

这篇文章我们来谈谈java的注解,java的注解分为三种一种是source,也就是在源文件的时候有效,还有一种是class,是在class中有效,当然我们写的都是最后一种也就是runtime,也就是运行时有效的,这里我只是写了一个简单的例子来作为注解的小的自定义注解demo,这里并没有仔细去研究这个,因为毕竟我们在很多时候是不需要写注解的,但是知道对我们并没有什么坏处。对了这里顺便说说java

2016-04-22 13:08:07 297

原创 android线程通信之Asynctask

这篇文章我们来谈谈android线程通信中的Asynctask,首先这是一个抽象的类,如果我们要使用它,我们必须有一个它的实现子类,并重写它的四个方法,在我的代码之中,我对每个方法都有详细的介绍,因为一个Asynctask只能execute一次,所以我的这个计数程序有点小问题,你们可以通过暂停等按钮的不可点击,然后再启动按钮以后再恢复按钮的点击,当然启动按钮会重新给一个新的对象,我把代码贴出来大家

2016-04-22 09:40:34 265

原创 java基础算法之递推

这篇文章我们来谈谈递推:递推的经典例子是兔子数列斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci[1]  )以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,

2016-04-21 20:32:24 4947

原创 基础算法学习之穷举

穷举是最最基础的算法之一,也是学习编程的人必须学习的算法之一,今天我们就用穷举来解决古代的一个经典的问题,鸡兔同笼的问题,鸡兔同笼的问题是知道有多少个头,多少脚,求解有多少鸡,多少兔?代码:package www.jk.exhaustiondemo;import java.util.Scanner;public class Test { public static int chi

2016-04-21 20:03:20 505

原创 java学习之泛型

今天我们来看看java的泛型吧,之前总是听见老师说泛型泛型,感觉就是在使用的时候才能确定类型的函数或者方法吧,这里我写了一个两个泛型,一个是自定义的类的泛型,还有一个是方法,大家看看吧,我感觉只要知道泛型放的位置,在函数里面就可以随便使用这个泛型了,感觉和c++的模板差不多的,贴代码:package www.jk.genericdemo;public class Test { publi

2016-04-21 18:31:13 301

转载 android学习之surfaceview

今天因为下午编程太累了,就想总结一下之前了解过的surfaceview,结果,唉,运行的结果总是在意料之外,好在最后终于调试好了,还是贴代码吧,感觉代码和注解才是真爱package com.jk.surfaceview;import java.util.Random;import android.R.color;import android.content.Context;impo

2016-04-20 20:33:48 331

原创 android学习之通过sqlite数据库实现记事本

最近学习了数据库,于是写了一个记事本来体验了一下数据库因为最近的事情比较多,所以界面或者有些设计不是那么完美,但是作为一个可扩展的笔记本demo也已经是足够了,这个例子实现的是,可以注册多个用户,然后每个用户都对应有一个记事本记录,ok,代码:package com.example.logindemo2;import com.jk.dao.SqlistBase;import andro

2016-04-20 18:43:36 4735 6

原创 java学习之contentprovider

今天我们来谈谈4大组件之一的contentprovier,在android里面数据Shared Preferences、网络存储、文件存储、外储存储、SQLite这5中储存方式,但是如果要用到程序间的数据共享,就要用到contentprovider了,contentprovider主要是通过配置文件申明这个数据可以读取,然后通过contentresolver和contentprovider建立连接

2016-04-20 09:46:59 576

原创 android基础学习之back键的监听和回到主页面

以前一直看别人写back键的监听,今天朋友问到自己了,然后自己说了一下,突然发现自己写不出来,然后百度了一下,不过就是一个onKeyDown的重写,。。。因为感觉代码太少,所以在添加监听的时候一个是关闭当前的activity,然后另外一个是跳转到桌面。ok,基本就这些,贴代码了package com.jk.backdemo;import android.os.Bundle;import

2016-04-19 16:54:14 950

转载 android学习之读取联系人

在现在的应用里面,我们需要经常获取联系人的信息,今天我的这个demo,就是讲的如何获取联系人的信息的。其实也就是几句代码,主要是一些语法需要记,代码:package com.jk.readendcont;import android.os.Bundle;import android.provider.Contacts.Phones;import android.app.Activity

2016-04-19 15:29:29 445

原创 android学习之SharePreference

今天谈谈sharepreference,sharepreference是一种轻量级的数据库,主要是用来保存一些配置信息,它的本质就是一个xml文件,保存在data/data/package/名字,贴代码:package com.jk.logindemo;import android.os.Bundle;import android.app.Activity;import andro

2016-04-19 09:03:26 345

原创 android学习之unbindservice一

今天谈谈android四大组件之一的service,今天我只简单的介绍service,以及需要注意的一些事项,后面会有补充的关于service的一些内容:先贴一张service的生命周期图当然,因为 这里介绍的是unbindservice,首先是启动,然后就是启动了service以后,oncreate只启动一次,以后点击以后只启动onStartConmmand,所以一般来说耗时的操

2016-04-15 19:03:22 3226

原创 android学习之视频播放

果断这几篇文章都是写的多媒体的,这篇文章就谈谈如果使用VideoView来播放视频,其实感觉和播放音乐差不多的,直接贴代码,因为感觉也蛮简单的,对了,,在后面我继承了VideoView写了一个自己的VideoView,这样我们方便设置Video来适配自己的屏幕。package com.example.videoviewdemo;import android.net.Uri;import

2016-04-15 16:59:39 325

翻译 android设计模式之Composite

今天我们来谈谈android的设计模式的Composite吧,里面的例子用的是高焕堂老师的一些资料,加上自己对android的一些理解,先说说具体的本文的代码的框架的结构吧,首先有一个叫Money的类作为类似android的View,然后继承自Money的Wallet作为android中的ViewGroup,这个Wallet可以包含自己,也可以包含money,接下来就是和Wallet同类的继承于M

2016-04-15 15:52:23 353

原创 android学习之SoundPool

今天学习了一下SoundPool,大家都知道很多游戏的的音效都是通过SoundPool来播放的,一般来说SoundPool允许播放的音乐不能超过1m,今天刚开始加载几个超过1m的音乐,然后程序也没有挂掉,就是没有声音,真心累,还有一个问题,在我的电脑上,只能通过触发事件来播放音乐,不知道你们的是不是,贴代码:package com.jk.soundpool;import android.m

2016-04-15 15:22:46 256

原创 简单的使用MediaPlayer

最近几天被多媒体搞的头都大了,可能最近几天更新的都是和多媒体有关的,之前出现播放器放不出来歌,居然是环境的问题,想想也是伤感,MediaPlayer,属于播放音乐的一种,还有一种是SoundPool,下一篇文章会介绍。一般来说,MediaPlayer可以说有两种播放音乐的方式,一种是通过setDataSource,然后就是同步或者异步prepare,还有一种就是通过create,据说cre

2016-04-15 10:51:38 369

原创 android设计模式之observer

今天我们谈谈android中的observer模式,看了一下网上的代码,感觉不是很好理解,我还是引入高焕堂老师的EIT模式来说,同时我结合android中的为button设置监听来讨论这个问题,我先大概讲讲理论,然后在下面会以一个简单的代码来表现。      高老师的EIT模型中E和I是对应不变的,就像我们的button按钮是不变的,而变得只是button按钮以后处理事件,T也就是我们说的监听

2016-04-13 16:31:42 406

原创 android设计模式之TemplateMethod

几天前,听了高焕堂老师的设计模式,就来一直因为琐事而耽误了,这几天终于可以写自己之前一直想写,却没有时间来写的了。首先,templatemethod是和继承有关的,通过父类来调用了子类的一些函数,是不是感觉很不可思议,别慌,看完我下面的阐述,或许你就不感觉到好奇了,android的上面的两层为框架和app层,我们可以通过框架来设计出我们所想要的任何的app,要知道框架只有那么多,而我们

2016-04-13 15:48:06 321

原创 activity的四种启动模式

1启动模式介绍:启动模式有四种,standard,singleTop,singleTask,singleInstance;这四种启动模式在配置文件的android:launchMode中设置首先是任务栈,每个应用都有一个任务栈,功能和函数调用的栈差不多,先后代表了activity出现的顺序;standard:每次激活activity都会创建activity,并放入到任务栈s

2016-04-13 15:03:45 216

原创 java学习之反射

反射是java语言的一个很重要的特性,反射的让java语言在工程的实践中的灵活性大大增强,反射使得java程序在运行的时候可以探测类的信息,动态的创建类的对象,获得对象的属性和方法,因此java反射被广泛的运用在工具和框架的开发。       也许并不是每一个程序员都需要用到java的反射来开发api,但是,理解反射对于我们理解框架和很多java工具是有很大的帮助的,比较这些框架和工具都是以反

2016-04-12 17:02:21 394

转载 android基础学习之有没有标签基础设置

今天我们就来谈谈一些基础的android界面的设置首先是AndroidManifest里面的在application标签里面添上这句话就可以使程序没有标签,全屏了 android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 第二种设置没有标签全屏的方式就是requestWindowFeature(Wind

2016-04-12 10:13:20 324

空空如也

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

TA关注的人

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