自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mypongo1

mypongo1

  • 博客(57)
  • 收藏
  • 关注

原创 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-03-29 18:55:07 495

原创 HorizontalScrollView实现多页左右滑动

先上图看看效果:上代码:PageView是封装后的一个类,继承了HZ喎�"http://www.2cto.com/kf/ware/vc/"target="_blank" class="keylink">vcml6b250YWxTY3JvbGxWaWV3oaM8YnI+CjwvcD4KPHA+PHByZSBjbGFzcz0="brush:java;">package com.example.test

2015-01-05 21:48:41 1308

原创 引入解释性变量

在上一篇文章中介绍了“以查询取代临时变量“。本文将介绍“引入解释性变量”这种重构手法。下面让我们来学习这种重构手法吧。 开门见山发现:你有一个复杂的表达式。解决:将该复杂的表达式(或其中的部分)的结果放进一个临时变量,并以此变量名称来解释表达式用途。//重构前if((platform.toUpperCase().indexOf(MAC) > -1) && (browser.toUpper

2015-01-05 21:41:18 1343

原创 Ajax实现收藏论坛版块功能,并异步返回提示信息

一、描述在论坛的版块页面上有一个收藏本版的超链接,点击该超链接即可收藏该版块,但是为了防止重复收藏,以及未登录就收藏的错误操作,我们采用Ajax异步返回收藏提示信息。 二、实现细节1、在jsp页面中点击收藏超链接,执行其onclick事件中的方法,而不是跳转到某个新的页面。2、在boardCollect.js文件中采用Ajax技术,执行后台的收藏版块的操作,并且异步写回提示信息。3、根据返回的提示

2015-01-05 21:39:41 1294

原创 统计一个给定字符串中指定的字符出现的次数

统计一个给定字符串中指定的字符出现的次数#include#include#includeint main(){ char source[80],dest[5]; int len_s,len_d,*count; int temp,i,j; while(1) { gets(dest); gets(source);

2015-01-05 21:38:34 4905

原创 关于在Spring中注册自定义的PropertyEditor

考虑下面两个类:ExoticType:package document.six.test; public class ExoticType { private String name; public ExoticType(String name) { this.name = name; } public String getName()

2014-12-29 19:13:11 609

原创 java实现软件程序开机自动启动和创建程序的桌面快捷方式源代码

一、java实现.exe程序的开机自动启动1、描述 自己在eclipse编写的java项目用exe4j Wizard打包成一个.exe可执行文件,并让用户可以开机自动启动。2、步骤1. 获得本软件中.exe可执行文件的路径2. 在Windows系统中的开机启动栏存放该.exe可执行文件的快捷方式,即可实现开机自动启动。3、代码private void startFolderMethod()

2014-12-29 19:11:28 1210

原创 JAVA将执行sql结果导入excel

Java实现将查询的sql结果集导入excel,用到jxl.jar包public String queryResultToExcel(String sql,String filename,OutputStream os) { Connection conn = null; Statement sm = null; ResultSet rs = nul

2014-12-29 19:10:42 782

原创 Spring init-method和destroy-method属性的使用

知识点介绍:有时候在bean初始化之后要执行的初始化方法,以及在bean销毁时执行的方法。这时就需要配置init-method和destroy-method属性,顾名思义,配置初始与销毁的方法。【转载使用,请注明出处:http://blog.csdn.net/mahoking】操作步骤:1、创建Speaker对象public class Speaker { private String

2014-12-29 19:08:02 884

原创 java socket报文通信-报文的封装

什么是报文这里我就不在阐述了,不清楚的朋友可以自己去查资料。我们今天要谈的报文主要友以下几个部分组成: 3位同步校验位+8位报文长度+报文头+报文体+32位MD5校验位 基本格式如下: 0X110X120X130000023202042014122314122301000815217010001张三B251AB76B11114DB176023A0AA27A524 说明:   前面的0X110

2014-12-29 19:05:33 11672 7

转载 java 同步锁(synchronized)

java 同步锁(synchronized) 在java中,Synchronized就是一把锁,他可以锁定一个方法,也可以锁定一个方法,我擦,其实这两个东西就是一样的。块不就是一个没有名字的方法么,方法就是一个有名字的块。本文就用块来测试。所谓锁,就是原子操作,把这个锁定的块作为一个整体,就像你上厕所,拉了就要擦屁屁,当然你也可以不擦,如果你不在意出现的问题的话。信号量Semaphor

2014-12-27 11:34:16 816

原创 Java把double数据写入文件中

public class ReadOrWriteObject { private FileInputStream fileIns = null ;//文件输入流 private FileOutputStream fileOts = null;//文件输出流 private ObjectInputStream objectIns = null ;//对象输入流

2014-12-27 11:31:23 1835 1

转载 Java向自定义文件夹中写入文件

File file = new File("E://rawSpeechRecordData//"); File newFile = null; if (!file.exists()) { file.mkdir(); if

2014-12-27 11:30:16 836

原创 spring beans源码解读之 ioc容器之始祖--DefaultListableBeanFactory

spring Ioc容器的实现,从根源上是beanfactory,但真正可以作为一个可以独立使用的ioc容器还是DefaultListableBeanFactory,因此可以这么说,DefaultListableBeanFactory 是整个spring ioc的始祖,研究透它的前生今世对我们理解spring ioc的概念有着重要的作用。1. DefaultListableBeanFactory的

2014-12-27 11:28:17 837

原创 Java集合之HashMap源码实现分析

1.简介   通过上面的一篇随笔我们知道了HashSet的底层是采用Map实现的,那么Map是什么?它的底层又是如何实现的呢?这下我们来分析下源码,看看具体的结构与实现。Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。Map.Entry是其的内部类,描述Map中的按键/数值对。需要指出的是Map,允许null的键也允许null的值。它的实现主要有HashMap和sort

2014-12-27 05:07:20 625

转载 简单理解算法篇--摊还分析

摊还分析是用来评价程序中的一个操作序列的平均代价,有时可能某个操作的代价特别高,但总体上来看也并非那么糟糕,可以形象的理解为把高代价的操作“分摊”到其他操作上去了,要求的就是均匀分摊后的平均代价。  摊还分析有三种常用的技术;聚合分析,核算法,势能法。  首先看个例子,现在有三种操作,push(s),pop(s),mutlipop(s,k),push(s),统称为栈操作。 push(s)每次只能压

2014-12-27 05:05:59 1380

原创 java轻量级IOC框架Guice

Guice是由Google大牛Bob lee开发的一款绝对轻量级的java IoC容器。其优势在于: 速度快,号称比spring快100倍。无外部配置(如需要使用外部可以可以选用Guice的扩展包),完全基于annotation特性,支持重构,代码静态检查。简单,快速,基本没有学习成本。Guice和spring各有所长,Guice更适合与嵌入式或者高性能但项目简单方案,如OSGI容器,spring

2014-12-27 05:03:59 605

转载 java面向对象之package & import

1.包(package)包的定义可以理解为一个文件夹,在这个文件夹内集成了编译好的class类。格式: package 类保存的文件夹位置; 其中保存的文件夹位置是该java文件所在目录中。案例:package pack.demo.a;class A{ public String getInfo() { return hello world !;

2014-12-24 17:59:56 676

原创 数据结构与算法之排序(归纳总结一)

    排序使我们实际开发中最常使用到的几个算法之一,按照如果按照排序过程中依据的原则对内部排序进行分类,则大致上可以分为插入排序、交换排序、选择排序、归并排序等排序方法。让我们首先看看插入排序的算法有哪些,以及他们的具体实现。插入排序的基本排序思想是:逐个考察每个待排序元素,将每一个新元素插入到前面已经排好序的序列中适当的位置上,使得新序列仍然是一个有序序列。在这一类排序中主要介绍三种排序方

2014-12-24 17:54:16 673

原创 java 继承类加载顺序

package xu.jin; class Insect{ private int i=print("hello i"); Insect(){System.out.println("Insect"+i);} { System.out.println("1"); System.out.println("2");

2014-12-24 17:51:49 750

原创 深入浅出设计模式——工厂方法模式(Factory Method)

介绍 在简单工厂模式中,我们提到,工厂方法模式是简单工厂模式的一个延伸,它属于Gof23中设计模式的创建型设计模式。它解决的仍然是软件设计中与创建对象有关的问题。它可以更好的处理客户的需求变化。 引入我们继续来说"new"的问题,我们在简单工厂模式中,将实例化对象的工作推迟到了专门负责创建对象的工厂类中,这样,在我们事先预知的情况下,可以根据我们的需要动态创建产品类。但是,我们的预知是有限的,

2014-12-24 17:50:33 682

原创 win7 java环境变量设置

计算机(右键)-属性-高级系统设置-环境变量1.新建系统变量 : JAVA_HOMEC:\Program Files (x86)\Java\jdk1.6.0_10(你的JDK安装路径)2.修改系统变量 :PATH %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 3.新建系统变量:CLASSPATH.;%JAVA_HOME%\lib;%JAVA_HOME%\li

2014-11-11 20:52:14 709

转载 image

一、获取帮助文档并下载相关资料首先打开微信开放平台:https://open.weixin.qq.com/ 如果没有注册,请先注册并上传开发者资料等待审核。资源中心----移动应用开发----分享与收藏功能----Android开发手册开发手册链接地址:https://open.weixin.qq.com/zh_CN/htmledition/res/dev/document/sdk/android

2014-11-07 17:27:50 780

转载 [置顶]《游戏引擎架构》信息总汇

$(document).ready(function() { $("h2").each(function(i) { var current = $(this); if (i > 0 && current.html() != "About") { current.attr("id", current.html());

2014-08-05 17:34:49 2023

原创 [置顶]本博方针

为希望本博能保持风格、质量,本文整理一直以來我想到的博客方针。 选题通用、时效长久的知识经验分享(杂谈除外) 以游戏开发为主(如图形、物理、人工智能、游戏编程、引擎架构等),但也涉猎一般计算机科学知识(如算法) 避免讨论最新热门技术,维持博文的原创性、独特性不转载、不翻译(自己的文章除外) 不撰书评(书评撰在豆瓣)可谈哲学问题,不谈宗教问题(如Windows好还是Lin

2014-08-05 17:34:47 606

原创 《游戏引擎架构》中英词汇索引表

$(document).ready(function() { $('#index').dataTable({bPaginate:false});} );/* * Table */table.dataTable { /*margin: 0 auto;*/ clear: both; /*width: 100%;*/}table.da

2014-08-05 17:34:45 2578 1

原创 面试题:检测点是否在扇形之内

前几天,同事在报告中提及检测角色是否在扇形攻击范围的方法。我觉得该方法的性能不是太好,提出另一个颇为直接的方法。此问题在游戏中十分常见,只涉及简单的数学,却又可以看出实现者是否细心,所以我觉得可当作一道简单的面试题。问题在微博发表后得到不少回应,故撰文提供一些解答。问题定义:在二维中,检测点\mathbf{p}是否在扇形(circular sector)内,设扇形的顶点为\math

2014-08-05 17:34:42 1762

原创 爱丽丝的发丝──《爱丽丝惊魂记:疯狂再临》制作点滴

今天(2011年6月14日)是《爱丽丝惊魂记:疯狂再临 (Alice: Madness Returns) Xbox360/PlayStation3/PC》(下简称《爱》)正式发售日,身为其开发程序员之一,特撰此文以作纪念。简介《爱》(图1a)是一款由上海独立游戏工作室麻辣马(Spicy Horse)制作、美商电艺(Electronic Arts)发行的惊悚动作冒险游戏。此全乃200

2014-08-05 17:34:40 692 1

原创 C++强大背后

在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup,该门语言则命名为——C with classes,四年后改称为C++。C++是一门通用编程语言,支持多种编程范式,包括过程式、面向对象(object-oriented programming, OP)、泛型(generic programming, GP)

2014-08-05 17:34:37 610

原创 手机分配短讯id的面试题目(分析解答篇)

看过上回《厘清需求篇》,读者想到多少个解呢?本篇首先谈及一些基本分析,之后会按两种API设计(纯函数API和含状态的API),分别描述多个解。虽然面试时或许不能进行实际测试,但本文还是给出PC上的效能测试结果。最后分析比较各解之优劣作为总结。 问题分析原来的问题是要从一个无序ids数组里分配一个id。我们可以用数学方式去更清楚地说明这个问题。设m = 256 为所有id的个

2014-08-05 17:34:35 609

原创 手机分配短讯id的面试题目(厘清需求篇)

前阵子,笔者在TopLanguage论坛里参与讨论了一个不错的面试题目,在此和大家分享,也当作个人的讨论总结。本文列出该问题,并模拟应试者向面试官的对话,以厘清问题需求。题目原文事缘Dbger发起的帖子中,liuxinyu举了一个面试题目,原文如下:有个老的手机短信程序,由于当时的手机CPU,内存都很烂。所以这个短信程序只能记住256条短信,多了就删了。 每

2014-08-05 17:34:33 597

原创 C++/C#/F#/Java/JS/Lua/Python/Ruby渲染比试

512x512像素,每像素10000个采样,Intel C++ OpenMP版本渲染时间为18分36秒。估计Ruby版本約需351天。<!--canvas { border-style:solid;border-width:1px;}--> google.load("visualization", "1", { packages: ["corec

2014-08-05 17:34:31 832

原创 C# vs C++ 全局照明渲染性能比试

512x512像素,每像素1000采样,C#版本渲染时间为40分47秒最近有多篇讨论程序语言趋势的博文,其中谈及到C#的性能问题。本人之前未做过相关测试,自己的回覆流于理论猜测,所以花了点时间做个简单实验,比较C#和C++的性能。 实验内容赵姐夫在此回覆认为,C#比C/C++慢,主要在于.Net平台的垃圾回收(garbage collection, GC)机制。若是计算密集型应用,C#

2014-08-05 17:34:29 943

原创 用JavaScript玩转游戏物理(一)运动学模拟与粒子系统

<!--canvas { border-style:solid;border-width:1px;}-->// Framework.jsvar canvas, ctx, isContinue, timeoutID;function start(canvasName, func) { if (timeoutID) stop();

2014-08-05 17:34:27 1048

原创 回应CSDN肖舸《做程序,要“专注”和“客观”》,实验比较各离散采样算法

// <![CDATA[ google.load('visualization', '1', {packages:['table']}); google.setOnLoadCallback(drawTable); function drawTable() { var data = new google.visualization.DataTable(); da

2014-08-05 17:34:25 707

原创 《编程之美:分层遍历二叉树》的另外两个实现

之前重温本书写书评时,也尝试找寻更好的编程解法。今天把另一个问题的实现和大家分享。问题定义给定一棵二叉树,要求按分层遍历该二叉树,即从上到下按层次访问该二叉树(每一层将单独输出一行),每一层要求访问的顺序为从左到右,并将节点依次编号。下面是一个例子: 输出:12 34 5 67 8节点的定义:struct Node { Node *pLeft;

2014-08-05 17:34:23 569

原创 在博客里轻松使用LaTeX数学公式

笔者最近的博文有不少数学相关内容,发现利用一些网上服务、jQuery和CSS,可以更轻松地在博客里使用\LaTeX语法排版方程式。\LaTeX是基于\TeX的排版系统。而\TeX就是美国著明计算机教授高德纳(Donald E. Knuth),为了编写他的巨著《计算机程序设计艺术(The Art of Computer Programming)》而设计的系统,对于数学公式的排版支援十分强大。线上

2014-08-05 17:34:20 726

原创 用JavaScript玩转游戏编程(一)掉宝类型概率

// <![CDATA[// framework.jsvar canvas, ctx, isContinue, timeoutID;function start(canvasName, func) { if (timeoutID) stop(); canvas = document.getElementById(canvasName);

2014-08-05 17:34:18 836

原创 从头开始思考游戏的数据管理系统(二)

上回谈及一些游戏数据管理的初部分析,但有些思绪还没有整理好,写得颇乱。今次就直接谈笔者在几个月前设计的Mil Universe Database(MUD),从中再阐述当中的一些想法。 基本的数据流程首先,一个项目中,引擎会使用的所有数据,都放进一个完整的数据库里。现时笔者的设计一个数据库会储存成一个.mud文件。 外部文件可以汇入数据库,也可以汇出。但汇出的数据会失去一些资讯(如稍

2014-08-05 17:34:16 1247

原创 从头开始思考游戏的数据管理系统(一)

和一般应用软件有点不同,大部份游戏软件都需要使用大量的游戏数据(game data)──或称为资源(resource)、资产(game asset, 但通常asset包括数据的原始格式, 不是最终运行游戏所需的数据)。在制作游戏时,如何管理这些数据是一个非常重要的问题。曾经看过和使用过不同的方案,现在归回原点,分析基本的需求,随笔记录笔者所选的方案思路。游戏数据管理的重要性如果从游

2014-08-05 17:34:14 1482

空空如也

空空如也

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

TA关注的人

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