自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ben的博客

软件开发技术

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

转载 c++和lua互相调用

一、Lua堆栈要理解Lua和C++交互,首先要理解Lua堆栈。简单来说,Lua和C/C++语言通信的主要方法是一个无处不在的虚拟栈。栈的特点是先进后出。在Lua中,Lua堆栈就是一个struct,堆栈索引的方式可是是正数也可以是负数,区别是:正数索引1永远表示栈底,负数索引-1永远表示栈顶。如图: lua的栈类似于以下的定义, 它是在创建lua_State的

2017-06-26 16:32:03 466

原创 c++调用lua文件

1.Lua文件function func() print("aaaaaa")endfunc()width=800height=600background={r=1,g=0,b=0}function f(x,y) return x+yend2.c++文件#include #include #include #include #include us

2017-06-26 16:26:25 1098

原创 Sublime Text3通过Python运行程序

在Sublime中按f7直接执行程序1. 修改sublime-build文件"cmd": ["python", "-u", "py文件的路径"], 2.新建py文件import os,sysimport subprocesssrcPath = r"C:/Users/Administrator/Desktop/Hello/simulator/win32";old_cw

2017-06-03 17:48:23 2934

原创 MySQL数据类型与操作数据表

USE打开数据库USE数据库名称;创建数据表CREATE TABLE [IF NOT EXISTS]  table_name(column_name  data_type,...)例:SHOW TABLES查看数据表列表SHOW  TABLES  [FROM  db_name][LIKE  'pattern' | WHERE expr

2017-05-18 20:05:11 298

原创 MySQL控制台基本命令

MySql命令的参数:修改MySQL提示符连接客户端时通过参数指定shell>mysql-uroot -proot --prompt 提示符连接上客户端后,通过prompt命令修改mysql>prompt 提示符MySQL常用命令显示当前服务器版本SELECT VERSION();显示当前日期时间SEL

2017-05-17 19:41:26 1188

原创 Java线程同步使用

EnergySystem.java/** * 遵循能量守恒定律: * 能量不会凭空创生或消失,只会从一处转移到另一处 */public class EnergySystem { //能量盒子,能量存贮的地方 private final double[] energyBoxes; private final Object lockObj = new Object();

2017-05-16 16:22:33 187

原创 Java线程基本使用

例子:ArmyRunnable.javapublic class ArmyRunnable implements Runnable { //volatile保证了线程可以正确的读取其他线程写入的值 volatile boolean keepRunning = true; @Override public void run() { while(keepRunning){

2017-05-16 15:40:01 271

原创 Java通过Socket实现UDP编程及Socket总结

UDPServer.javaimport java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;/* * 服务器端,实现基于UDP的用户登陆 */public class UDPServer { public s

2017-05-16 13:30:21 8591

原创 Java通过Socket实现TCP编程

例:ServerThread.javaimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.io.PrintWriter;

2017-05-16 11:18:22 399

原创 Java中网络相关API的应用

InetAddress类InetAddress类用于标识网络上的硬件资源,表示互联网协议(IP)地址。例:import java.net.InetAddress;import java.net.UnknownHostException;import java.util.Arrays;/* * InetAddress类 */public class Test01 { p

2017-05-16 10:41:07 482

原创 Java中的XML文件写入

DOMimport java.io.File;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import javax.xml.transform.

2017-05-16 09:47:21 421

原创 四种XML解析方式比较

2017-05-16 00:26:58 342

原创 Java中DOM4J及JDOM 方式解析xml

books.xml: 冰与火之歌 乔治马丁 2014 89 安徒生童话 2004 77 English Book.javapublic class Book { private String id; private String name; private String author; private String yea

2017-05-16 00:17:49 282

原创 Java中SAX方式解析XML

books.xml 冰与火之歌 乔治马丁 2014 89 安徒生童话 2004 77 English Book.javapublic class Book { private String id; private String name; private String author; private String year

2017-05-15 23:00:37 340

原创 Java中DOM方式解析XML

例子:XML文件: 冰与火之歌 乔治马丁 2014 89 安徒生童话 2004 77 English Java代码:import java.io.IOException;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentB

2017-05-15 22:06:16 217

原创 Java中对象的序列化和反序列化

1)对象序列化,就是将Object转换成byte序列,反之叫对象的反序列化 2)序列化流(ObjectOutputStream),是过滤流----writeObject   反序列化流(ObjectInputStream)---readObject3)序列化接口(Serializable)   对象必须实现序列化接口 ,才能进行序列化,否则将出现异常   这个接口,没有任何

2017-05-15 18:52:26 270

原创 Java字符流操作

1)认识文本和文本文件 java的文本(char)是16位无符号整数,是字符的unicode编码(双字节编码) 文件是byte byte byte ...的数据序列文本文件是文本(char)序列按照某种编码方案(utf-8,utf-16be,gbk)序列化为byte的存储结果2)字符流(Reader Writer)---->操作的是文本文件字符的处理,一次处理一个字符字符的

2017-05-15 18:09:04 396

原创 Java字节流操作

1)InputStream、OutputStream    InputStream抽象了应用程序读取数据的方式    OutputStream抽象了应用程序写出数据的方式  2)EOF = End   读到-1就读到结尾 3)输入流基本方法   int  b = in.read();读取一个字节无符号填充到int低八位.-1是 EOF   in.read(byte[] bu

2017-05-15 17:04:05 339

原创 RandomAccessFile基本操作

RandomAccessFile java提供的对文件内容的访问,既可以读文件,也可以写文件。RandomAccessFile支持随机访问文件,可以访问文件的任意位置 public static void main(String[] args) throws IOException{ File demo = new File("demo"); if(!demo.exists()

2017-05-15 15:31:08 211

原创 Java中File 类的使用

java.io.File类用于表示文件(目录)File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问例: public static void main(String[] args) { File file = new File("E:\\java\\me"); //System.out.println(file.exists()); if(!f

2017-05-15 11:49:57 253

原创 Java字符编码操作

public class HelloWorld{ public static void main(String[] ages) throws Exception{ String s="呵呵Hh"; //转换成字节序列用的是项目默认的编码GBK byte[]bytes=s.getBytes(); for (byte b:bytes) { //把字节(转换成了int)以16进制

2017-05-15 11:48:06 203

原创 Java内置的进制转换

2017-05-15 11:22:38 206

原创 Java 中的集合框架

2017-05-14 23:11:13 167

原创 Java 中的常用类

我们对基本数据类型都非常熟悉,例如 int、float、double、boolean、char 等。基本数据类型是不具备对象的特性的,比如基本类型不能调用方法、功能简单。为了让基本数据类型也具备对象的特性, Java 为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型。 基本类型和包装类之间的对应关系:包装类主要提供了两大类方法:1

2017-05-14 16:31:10 382

原创 Java 中的 StringBuilder 类

在Java中,除了可以使用 String 类来存储字符串,还可以使用 StringBuilder 类或 StringBuffer 类存储字符串,那么它们之间有什么区别呢?String 类具有是不可变性。如运行结果:  从运行结果中我们可以看到,程序运行时会额外创建一个对象,保存 "helloworld"。当频繁操作字符串时,就会额外产生很多临时变量。使用 Strin

2017-05-14 16:07:34 350

原创 Java 中 String 类的常用方法

String 类的常用方法:结合代码来熟悉一下方法的使用:运行结果:提示:1. 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-12. 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引;如果没有匹配结果,返回 -13. 使用 substring(beginIndex , end

2017-05-14 16:00:41 566

原创 Java 中字符串的不变性

String 对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。如下所示:运行结果: 结合上面的代码,关于字符串必须需要了解:1、 通过 String s1="爱慕课"; 声明了一个字符串对象, s1 存放了到字符串对象的引用,在内存中的存放引用关系如下图所示:然后通过 s1="欢迎来到:"+s1; 改

2017-05-14 15:51:15 395

原创 Java异常与异常处理

例1:例2:test2:

2017-05-14 15:32:39 173

原创 Java 中的多态

2017-05-14 14:05:21 155

原创 Java 中的继承

注意:Java中的继承是单继承

2017-05-14 11:27:06 222

原创 Java 中的方法内部类

方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用。一定要注意哦:由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符。

2017-05-14 01:30:34 188

原创 Java 中的静态内部类

静态内部类是 static 修饰的内部类,这种内部类的特点是:1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问 2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员3、 创建静态内部类的对象时,不

2017-05-14 01:25:07 258

原创 Java 中的成员内部类

内部类中最常见的就是成员内部类,也称为普通内部类。我们来看如下代码:运行结果为:从上面的代码中我们可以看到,成员内部类的使用方法:1、 Inner 类定义在 Outer 类的内部,相当于 Outer 类的一个成员变量的位置,Inner 类可以使用任意访问控制符,如 public 、 protected 、 private 等2、 Inner 类中定义的 te

2017-05-14 01:12:48 257

原创 Java 中的访问修饰符和内部类

内部类:问:什么是内部类呢?答:内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。问:那为什么要将一个类定义在另一个类里面呢?清清爽爽的独立的一个类多好啊!!答:内部类的主要作用如下:1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类2. 内部类的方法

2017-05-14 01:04:15 1724

原创 使用包管理 Java 中的类

2017-05-14 00:38:58 478

原创 Java中类的静态初始化块

Java 中可以通过初始化块进行数据赋值。如:在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。我们来看一段代码:运行结果:通过

2017-05-13 22:14:18 1622

原创 在Java中使用注释

Java 中注释有三种类型:单行注释、多行注释、文档注释运行结果: Hello Imooc!看:被注释的代码块在程序运行时是不会被执行的~~我们可以通过 javadoc 命令从文档注释中提取内容,生成程序的 API 帮助文档。打开首页,查看下生成的 API 文档PS:使用文档注释时还可以使用 javadoc 标记,生成更详细的文档信息

2017-05-13 17:18:11 458

原创 Java中的数据类型

Java 语言是一种强类型语言。通俗点说就是,在 Java 中存储的数据都是有类型的,而且必须在编译时就确定其类型。 Java 中有两类数据类型:在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。说白了,基本数据类型变量里存储的是直接放在抽屉里的东西,而引用数据类型变量里存储的是这个抽屉的钥匙,钥匙和抽屉一一对应。常用的基本数据

2017-05-13 17:00:43 583

原创 Java开发环境搭建

JDK安装目录: 验证JDK是否正确安装:打开cmd,输入java -version,如果能显示java的版本号就表示配置正确。

2017-05-13 12:09:19 170

转载 树、森林及二叉树的相互转换

1.普通树转换为二叉树1.加线,在所有兄弟结点之间加一条连线。2.去线,对树中每个结点,只保留它与第一孩子结点的连线,删除它与其他孩子结点之间的连线。3.层次调整,以树的根结点为轴心,将整棵树顺时针旋转一定的角度,使之结构层次分明。2.森林转换为二叉树1.把每棵树转换为二叉树。2.第一棵二叉树不动,从第二棵二叉树开始,依次把后一棵二叉

2017-05-07 15:45:19 520

空空如也

空空如也

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

TA关注的人

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