Java
文章平均质量分 78
flying_fish_wj
这个作者很懒,什么都没留下…
展开
-
Java程序编写实现日历的打印
日历打印最主要的是星期数与日期数的对应,解决这个问题可以通过如下的实例:假如我们决定日历打印的起始日期选择1990.1.1这一天刚好是星期一,我们选择打印1990.2月份的日历,接着为我们那2月1号减去1月1号获取他们之间相差的天数Days,然后通过Days%7取余的方式将日期和星期数相对应。public class TestCalender03{ public static void ma翻译 2016-07-28 10:11:12 · 840 阅读 · 0 评论 -
HttpURLConnection方式网上下载多张图片
HttpTest.javapublic class HttpTest { public static void main(String[] args) { String url = "http://www.tngou.net/api/top/list"; String json = formJson(url); Gson gson = n原创 2016-08-19 20:26:06 · 796 阅读 · 0 评论 -
文件夹之间的拷贝
例如将文件夹res里的内容拷贝到文件夹a中Filecopy.javapublic class FileCopy { public static void main(String[] args) { copyDir("res","a"); } public static void copyOfFile(File textFile1,File textF翻译 2016-08-08 20:41:24 · 304 阅读 · 0 评论 -
TCP协议下多个客户端向服务器发出消息
服务器端public class Server { public static void main(String[] args) { try { ServerSocket server = new ServerSocket(10000); Socket socket; while ((socket翻译 2016-08-20 16:10:40 · 1450 阅读 · 0 评论 -
Sax的Xml解析方式
一、Sax解析格式实例test.xml注意本段解析文件中 和之中都有,所以要考虑一一对应问题 George Jack Jash Ryan John 正黑 Reminder 宋体 Don't forget the meeting! TestS原创 2016-08-10 19:50:13 · 219 阅读 · 0 评论 -
反射方式解析xml
public class Rss { private float version; private Channel channel; public float getVersion() { return version; } public void setVersion(float version) { this.vers转载 2016-08-22 20:57:51 · 758 阅读 · 0 评论 -
Pull的xml解析方式
一、pull解析方式plante.xml Marsh Marigold Caltha palustris 4 Mostly Sunny $6.81 051799 Cowslip Caltha palustris 4原创 2016-08-10 20:20:50 · 279 阅读 · 0 评论 -
接口的动态实现(注释)
主函数public class InterTest { public static void main(String[] args) { ThreadMethod method = Util.getInstance(ThreadMethod.class, new Instance()); method.runHttp(); method.翻译 2016-08-12 16:53:57 · 643 阅读 · 0 评论 -
File类中的方法实现
public class File { public static void main(String[] args) { File file = new File("E:\\kankan\\XMPCache"); File absoluteFile = file.getAbsoluteFile(); System.out.println("原创 2016-09-07 13:46:08 · 339 阅读 · 0 评论 -
设计模式之模板方法模式
1.什么是模板方法模式 算执行的统一框架,模板方法模式定义了一个操作中的算法骨架而将一些步骤 延迟到子类中实现使得子类可以在一个不改变算法结构的同时,就重新定义一个 算法某些特定步骤。2.模板方法模式的优点 分装性好 复用性好 屏蔽细节 便于维护3.模板方法模式得缺点 继承(单继承)/** 抽象方法,为子类提供方法*原创 2016-11-29 09:09:01 · 275 阅读 · 0 评论 -
设计模式之责任链模式
1.什么是责任链模式 责任链模式就是将接受者对象连城一条链,并在该链上传递请求知道有一个接受者对象处理它。通过让更多对象有机会处理请求,避免了请求发送者和接受者之间的耦合。 责任链模式中,作为请求接受者的多个对象通过对其后继的引用而连接起来的形成的一条链。请求这这条链上传递,直到链上的某个接受者处理了这个请求,每个接受者都可以选择自行处理请求或是向后继传递请求。2.责任链模原创 2016-11-29 09:38:38 · 304 阅读 · 0 评论 -
设计模式之策略模式
策略模式的设计原则: 1.找出应用中需要变化的部分,把他们独立出来,不要和那些不需要变化的代码混在一起 2.面向接口编程,而不是面向实现编程 3.多用组合,少用继承策略模式的实现 1.通过分离变化得出策略接口Strategy public interface FlyingStragety { void performFly();原创 2016-11-21 12:08:15 · 389 阅读 · 0 评论 -
设计模式之观察者模式
1.观察者模式创建步骤 1.目标(被观察者)对象的定义 2.具体目标对象的定义 3.观察者接口的定义 4.观察者的具体实现2.观察者的两种实现方式:推模型 和 拉模型 推模型: 目标对象主动向观察者推送目标得的详细信息 推送的信息通常是目标对象的全部或者部分数据 拉模型: 目标对象再通知观察者时,只传递少量信息原创 2016-11-21 13:09:30 · 326 阅读 · 0 评论 -
Java中的反射应用
一、Class类1.在面向对象的世界里,万事万物皆对象。类是对象,类是java.lang.Class类的实例对象2.Class.forName("类的全称"); 1).不仅表示了类的类类型,还代表了动态加载类 2).编译时刻加载类是静态加载类,运行时刻加载类是动态加载类 3).基本数据类型 void关键字 都存在类类型4.Class的基本原创 2016-11-22 15:28:00 · 307 阅读 · 0 评论 -
设计模式之工厂模式
工厂模式概念:1.实力化对象,用工厂方法代替new操作2.工厂模式包括工厂方法模式和抽象工厂模式3.抽象工厂模式是工厂方法模式的扩展工厂模式的意图:1.定义一个接口来创建对象,但是让子类来决定哪些类需要被实例化2.工厂方法把实例化的工作推迟到子类中去实现适合工厂模式的场景:1.有一组类似的对象需要创建2.在编码是不能预见需要创建那种类的实例3.系统需原创 2016-11-22 15:35:33 · 223 阅读 · 0 评论 -
HttpURLConnection方式文件下载之多线程下载
DownloadRunnable.java1.子线程public class DownloadRunnable implements Runnable { private String url; private File file; private int start; private int end; private long startTime;转载 2016-08-19 20:04:21 · 812 阅读 · 0 评论 -
HttpURLConnection实现文件下载
public class DownloadTest { public static void main(String[] args) { try { HttpURLConnection connection = (HttpURLConnection) new URL("http://skycnxz2.wy119.com/4/wandoujia.apk转载 2016-08-19 19:56:28 · 3261 阅读 · 0 评论 -
数组的四种排序方式
在介绍这四种排序方法之前,我们先介绍一下Swap(a,i,j)互换函数的一种比较简洁的写法 /* * 交换函数 * 异或写法 * */ private static void swap(int[] a,int i,int j){ /* * 分析:当下标i==j时,a[i]和a[j]就都指向了同一个内存块,即a[i]=a[j翻译 2016-07-30 13:01:47 · 1797 阅读 · 0 评论 -
brainfack语言解析器
下面是这八种状态的描述,其中每个状态由一个字符标识:字符含义>指针加一指针减一+指针指向的字节的值加一-指针指向的字节的值减一.输出指针指向的单元内容(ASCⅡ码),输入内容到指针指向的单元(ASCⅡ码)[如果指针指向的单元值为零,向后跳转到对应的]指令的次一指令处]如果指针指向的单元值不为零,向前跳转到对应的[指令的次一指令处public class Demo { public st翻译 2016-08-03 12:47:16 · 477 阅读 · 0 评论 -
正则表达式实现文件的解析
正则表达式:public class Test01 { public static void main(String[] args) { String str = "\n" + " \n" + " Java入门\n" + " 30.00\n" +翻译 2016-08-04 10:03:09 · 464 阅读 · 0 评论 -
Mp3(ID3v2)格式文件解析
ID3v2版本的标签分析: 1、标签头在文件的首部顺序记录 10 个字节的 ID3V2.3 的头部。数据结构如下: char Header[3]; /*必须为"ID3"否则认为标签不存在*/ char Ver; /*版本号 ID3V2.3 就记录 3*/ char Revision; /*副版本号此版本记录为 0*/ ch翻译 2016-08-04 10:58:47 · 11219 阅读 · 0 评论 -
章节选择器
采用正则表达式来实现,本程序是用自己的小说文档来实现的,所以编译模式的设置要根据自己采用什么样的文档:public class Test06 { public static void main(String[] args) { Pattern pattern = Pattern.compile("^\\s*第[一二三四五六七八九十零百千万]+章");//编译模式翻译 2016-08-05 17:43:24 · 360 阅读 · 0 评论 -
数字转换成汉字
我们通过追加的方式来实现,考虑到我们的数字是四四分组的,所以我们要先实现四位数正确转换,上述问题解决之后,再打印四位以上数字时,我们就可以通过追加的方式解决五位以上数“万”字的追加,同时此程序只能对千万级别以内的数字进行转换。public class Test02 { public static void main(String[] args) { try (Buffere翻译 2016-08-05 17:58:58 · 485 阅读 · 0 评论 -
Json源生解析
反解析生成Json格式TestJson.javapublic class TestJson { public static void main(String[] args) { JSONObject object = new JSONObject(); object.put("firstName", "John"); object.p原创 2016-08-17 18:33:46 · 701 阅读 · 0 评论 -
客户端向服务端传输文件(2)
Client.javapublic class Client { public static void main(String[] args) { try { Socket socket = new Socket("10.9.179.224", 10000); File file = new File("C:\\Users原创 2016-08-17 19:17:47 · 773 阅读 · 0 评论 -
udp一对一通信
public class ChatTest { public static void main(String[] args) { InetAddress name; try { name = InetAddress.getLocalHost(); System.out.println(name);原创 2016-08-17 20:36:22 · 1025 阅读 · 0 评论 -
客户端多线程向服务端的文件传输
客户端Cleint.javapublic class Client { public static void main(String[] args) { try (Socket socket = new Socket("10.0.179.204", 11000)) { FileInputStream fis = new FileInputSt原创 2016-08-17 18:53:59 · 1354 阅读 · 0 评论 -
线程问题多生产者对多消费者
Creator.javapublic class Creator implements Runnable { private Queue queue; private Set creators; public Creator(Queue queue, Set creators) { this.queue = queue; this.cre翻译 2016-08-08 19:05:50 · 265 阅读 · 0 评论 -
反射机制的基本用法
1、java反射机制就是在运行状态下,对任意一个类,都能知道所有的属性和方法。对于任意一个对象,都能调用其任意一个方法和属性。这种动态获取信息以及动态调用对象的方法的功能叫做java反射机制。1.1 获取字节码对象的三种方式(1)Object类中的getClass()方法:使用该中方式,必须要有具体的类,并且要创建对象(比较麻烦) Thing t = new Thing();原创 2016-08-13 13:55:22 · 338 阅读 · 0 评论 -
拔河问题
1.拔河规则:将一拨人分为两组进行拔河比赛,条件是两队分配的人的个数相差不能超过1个(即小于等于1),且两队的总体重的差值是最小的。通过穷举法来实现示例如下:Test.javapublic class Test { public static void main(String[] args) { Scanner scanner = new Scanner(S翻译 2016-08-19 18:57:33 · 861 阅读 · 0 评论 -
HttpURLConnection方式下载文件之实现断点续传
public class DownloadTest { public static void main(String[] args) { try { File file = new File("test.apk"); HttpURLConnection connection = (HttpURLConnection) new转载 2016-08-19 19:52:57 · 5027 阅读 · 0 评论 -
设计模式之适配器模式
适配器定义:适配器模式将一个类的接口,转换成客户期望的另外一个接口。使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作;适配器的分类1.组合的方式:采用组合的方式的适配器成为对象适配器特点:把“把被适配者”作为一个对象组合到适配器类中,以修改目标接口包装被适配者2.继承:采用继承方式的称为类适配器特点:通过多重继承不兼容接口,实现对目标接口的匹配,单一的为某原创 2016-11-22 15:43:53 · 259 阅读 · 0 评论