自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 (六)Lua运算符重载

__add: 对+进行重载__sub: 对-进行重载__mul: 对*进行重载__div: 对/进行重载__unm: 对相反数进行重载__mod: 对%进行重载__pow: 对^进行重载__concat: 对连接操作符进行重载__eq: 对==进行重载__lt: 对<进行重载__le: 对<=进行重载__tostring: 类似于C++中对<<的重载 只要做了该重载,在使用print时就会使用对应的

2017-08-21 16:18:56 2403

原创 玩回合制手游《问道》心得

这是我第一次玩那么正式的回合制的游戏,我从下面几个方面总结我的心得界面登录界面和我以前玩的游戏差不多,不过这类游戏跟我以前经常玩的实时竞技,横版格斗界面不同,它很漫画,很唯美,美工很细心游戏界面也一样很美观,但跟我以往玩的游戏相比复杂,除了那些充值什么的按钮,有很多背包之类的东西,很影响体验。操作这类游戏操作初玩比较无脑,任务自动寻路,打怪自动执行,剧情也可以跳过,跟我以前玩的完全不一样。物品物品种

2016-09-30 23:50:08 1174 2

原创 Lua递归打印斐波那契数列

function Fibosequence(n) if n == 1 then return 0 elseif n == 2 or n ==3 then --递归终止条件 return 1 else return Fibosequence(n-2)+Fibosequence(n-1) endendprint("输入一个数字(求斐波那契数列):")local a =

2016-08-25 01:51:07 1268

原创 (五)Lua函数

一般定义方式: function add (a) local sum = 0 for i = 1, #a do sum = sum + a[i] end return sum end5.1 多重返回值function find (a)local min = a[1]local max = a[1] for i = 1, #a doif a[i] > max thenmax

2016-08-24 01:42:54 401

原创 (四)Lua语句

Lua支持一组几乎传统的语句,类似于C或Pascal。传统的报表包括任务,控制结构,和过程调用。Lua还支持一些不那么传统的语句,如多重赋值和局部变量声明。4.1 赋值Lua允许多重赋值:a, b = 10, 2*x 结果是a = 10,b = 2*x x,y = y,x 结果是x和y交换值4.2局部变量和块在一个全局变量前面添加local就变成局部变量 local i = 1 – loca

2016-08-23 16:05:58 338

原创 (三)Lua表达式

3.1 算术操作符二元操作符:+-*/^% 一元操作符:- 取模操作定义: a%b = a-float(a/b)*b3.2 关系操作符所有关系操作符:< > >= <= == ~=a = {}; a.x = 1; a.y = 0 b = {}; b.x = 1; b.y = 0 c = a 结果是a==c a~=b.3.3 逻辑操作符逻辑操作符:and or notprint(4 an

2016-08-21 20:59:01 367

原创 (二)Lua类型与值

Lua有八种基础类型:nil(空), boolean(布尔), number(数字), string(字符串), userdata(用户自定义),function(函数), thread(线程), and table(表)

2016-08-17 17:15:03 348

原创 (一)Lua基础

1.1程序块a = 1b = a * 2a = 1;b = a * 2;a = 1;b = a * 2a = 1 b = a * 2都是合法的程序块

2016-08-17 16:51:21 291

原创 Lua程序设计的开始

不废话,直接讲重点 ①先下载开发环境(必须) 在官网或者其他途径获取lua-5.3.3_Win64_bin.zip(Windows系统),解压后在高级系统设置配置环境变量,在Path变量下添加解压后的目录,如C:\Program Files\lua-5.3.3_Win64_bin 然后可以在cmd命令提示符下编译运行Lua ②在eclipse上增加LDT插件 可以在线安装,也可以下载插件把

2016-08-16 20:33:15 236

翻译 Daytime服务器

package serversocket;import java.net.*;import java.io.*;import java.util.*;import java.util.concurrent.*;// 时间协议服务器public class DaytimeServer { private static final int PORT = 5001;// 端口 pr

2016-08-15 15:11:30 1316

原创 用socket把单词写入服务器

package socket;import java.io.*;import java.net.*;import java.text.*;import java.util.*;// 时间协议客户端public class Time { // 要连接到的主机名 private final static String hostname = "time.nist.gov"; /

2016-08-09 22:42:53 440 2

翻译 用socket从服务器读取时间

package socket;import java.io.*;import java.net.*;import java.text.*;import java.util.*;// 时间协议客户端public class DaytimeClient { // 要连接到的主机名 private final static String hostname = "time.nist.g

2016-08-09 22:32:28 814

原创 解析web服务器日志文件

package internet;import java.io.*;import java.net.*;import java.util.*;import java.util.concurrent.*;public class PooledWeblog { public final static int THREAD_COUNT = 4;// 线程数量 private static

2016-08-06 20:55:42 1985

原创 SpamCheck

很多服务会监视垃圾邮件发送者(spammer),并告诉客户端,试图与之连接的主机是否是一个已知的垃圾邮件发送者 要查看一个地址是否是一个已知的垃圾邮件发送者,可以逆置这个地址的字节,增加黑洞服务的域,然后查找这个地址,如果这个地址被找到,说明它是一个已知的垃圾邮件发送者,如果抛出UnknownHostException,这就说明它不是。package internet;import java.ne

2016-08-02 20:02:51 1277 1

原创 线程的调度

Java虚拟机会按照特定的机制为程序中每个线程分配CPU的使用权,这种机制被称为线程的调度。线程的调度有两种模型:分时调度模型和抢占式调度模型。 分时调度模型是指让所有的线程轮流获得cpu的使用权,并且平均分配每个线程占用的CPU的时间片。 抢占式调度模型是指优先让可运行池中优先级高的线程占用CPU,如果可运行池中的线程优先级相同,那么就随机选择一个线程,使其占用CPU。线程的优先级0到10整数

2016-07-27 00:24:05 945

原创 线程的生命周期及状态转换

线程的整个生命周期分为五个阶段,分别是:新建状态(new),就绪状态(runnable),运行状态(running),阻塞状态(blocked),死亡状态(terminated)他们之间的状态转换图:

2016-07-26 23:38:24 780

原创 多线程同步

只要有多个线程共享资源,都必须考虑同步

2016-07-25 13:46:05 265

原创 并发编程

并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个Executor执行。Executor在执行时使用内部的线程池完成操作。 Executor在客户端和任务执行之间提供了一个间接层;与客户端直接执行任务不同,这个中介对象将执行任务。Executor允许你管理异步任务的执行,而无需显式的管理线程的生命周期。Future、Callable、ExecutorServi

2016-07-24 20:28:09 236

原创 从线程返回信息

由于run()和start()方法不返回任何值,因此,想从线程返回信息,必须用一个方法获得这些信息然后返回若:class A implements Runnable{ private byte[] message public void run{ } public byte[] getMessage(){ return message;

2016-07-21 18:02:30 420

原创 简述线程

线程由于进程是相当重量级的,太多进程很快会让服务器吃不消。 这时,有两种解决方案: ①重用进程,而不是创建新的进程。 ②使用轻量级的线程来处理连接,而不是重量级的进程。线程的替代方法: 如果一个应用同时需要数千个持续很长时间的连接,就要考虑异步I/O而不是线程。运行线程线程如果T开头,表示Thread类对象。 线程如果t开头,表示虚拟机中一个单独,独立的执行路径。

2016-07-21 01:27:25 526

原创

流的基本概念

2016-07-15 20:04:45 262

原创 Java网络编程的开始

Java网络编程中的基本网络概念

2016-07-15 15:23:26 301

空空如也

空空如也

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

TA关注的人

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