- 博客(44)
- 问答 (1)
- 收藏
- 关注
原创 python word 公式转png图片处理方式
因项目中需要导入word文档,但其中存在的公式,系统不支持,但又需要导入进系统,之前都是手动截图后再重新插进去,关键时候上千章试卷要进行截图也很耗时间,所以研究了一下转换方式 首先通过将docx后缀改成zip解压后可以发现,公式分成两部分,一部分是.wmf的矢量图文件,一个是objectbin文件,但实际通过画图打开矢量图后发现公式已经可以完整显示出来了,那需要解决...
2018-12-17 21:33:09 5492 7
原创 快学scala第十六章习题——XML处理
本章主要讲解对XML的处理,要处理xml需要引入scala-xml-x.x.x.x.jar包,创建普通scala 类不会自动添加此jar包,需要手动引入之后就可以使用了1.(0)得到什么,(0)(0)又得到什么,为什么?仍然为<fred/>,<fred/>(0)代表节点本身,而且scala内部已实现了串接调用,所以<fred/>(0)(0)依然是节点本身2.如下代码的值是什么? Openin
2016-04-17 20:44:15 520
原创 scala习题(14)——模式匹配和样例类
14.1 JDK发行包有一个src.zip文件包含了JDK的大多数源代码。解压并搜索样例标签(用正则表达式case [^:]+:)。然后查找以//开头并包含[Ff]alls?thr的注释,捕获类似// Falls through或// just fall thru这样的注释。假定JDK的程序员们遵守Java编码习惯,在该写注释的地方写下了这些注释,有多少百分比的样例是会掉入到下一个分支的? 没看懂
2016-03-13 15:39:59 736
原创 scala习题(十三)——集合
这章主要讲解关于scala中集合的概念,map,list等 def indexesSet(arg:String)={ var map=Map[String,SortedSet[Int]](); var m:Int=0; arg.foreach { x => if(map.contains(x.toString())) {map.get(x.toString()).get
2016-02-22 22:04:19 683
原创 scala习题(11)——操作符
scala操作符优先级 */% +- : != & ^ | 非操作符 最低优先级赋值操作符 从高到低优先级逐渐降低,同一层属同等优先级,按照从左到右的顺序进行计算(除了以冒号结尾的操作符和赋值操作符)1.根据优先级规则,3+4 ->5 和 3 ->4+5是如何被求值的
2016-01-21 21:59:40 446
原创 scala习题九——文件和正则表达式
1.写出一个小scala程序,将某个文件中的行倒转顺序(将最后一行作为第一行,依次类推),记住要import scala.io.source val source=Source.fromFile("D:\\text.txt","UTF-8"); var lineitrator=source.getLines().toArray; for(i0 until lineitrato
2015-12-22 23:33:21 612
原创 scala习题八——继承
1.扩展如下的bankaccount类,新类checkingacount对每次存款和取款都收取1美元手续费class BankAccount(initialBalance:Double){ private var balance=initialBalance; def deposit(amount:Double)={ balance+=amount;bal
2015-12-10 23:15:58 710
原创 快学scala习题(七)-----包
1.编写示例程序展示为什么 package com.horseman.impatient不同于 package com package horseman package impatient第一种方式中,T3可以访问T1,T2类package com{ class T1{ } package horseman{ class T2{ }
2015-12-06 20:14:07 552
原创 快学scala第6章习题——对象相关
1.编写一个conversion对象,加入inchestoCentimeters,gallonstoliters,milestoKilometers方法 object Conversions{ def inchesToCentimeters():Unit={ println("Hello World"); } def gallonsToLiters():U
2015-11-29 21:05:37 493
原创 快学scala习题(五)
1.Int.MaxValue代表着Int的最大值,一旦越过就会导致值变为负数,所以,需要在Increment里面加上判断语句 class Counter{ private var value=Int.MaxValue; def increment():Unit={ if(value<Int.MaxValue){ value=value
2015-11-22 17:22:42 358
原创 快学scala习题(四)
本章为Map的使用1.设置一个映射,在根据之前的映射来生成第二个映射val itemprice=Map("Exlier" -> 150,"Potion" -> 50,"Phoneix" ->200); val itemprice1=new scala.collection.mutable.HashMap[String,Double]; for ((k,v)<- itempri
2015-11-15 23:02:29 462
原创 快学scala习题(三)
记录用,避免忘记1.生成数组,可以用scala提供的scala.util.random方法,该方法提供了nextInt(int)就是用来获取之间的整数的,具体可查看scaladoc def RandArray(n:Int):Array[Int] = { var a=new Array[Int](n); val s=scala.util.Random; for(i<
2015-11-15 16:09:29 333
原创 快学scala习题(一)
记录用,避免忘记 1.键入3.后,输入tab即可看到2.需要注意的是res变量是val型变量,即便对其平方改值也不会发生改变,差值还是平方根-33.val型变量,可以在repl中输入res0=3,会返回错误,不能赋值给val4.crazy *3的结果为该字符串重复3次,这个方法在StringOps中,另外字符串是不能相乘的,会报错,因为该方法的参数是Int5.10 max 2的含义是求两数最大值,
2015-11-15 12:49:31 466
原创 快学scala习题(二)
记录用,免得忘了1.巩固ifelse用if(x>0) signum=1 else if(x<0) signum=-1 else signum=0;2.一个空的表达式的值是(),类型是Unit3.不合法,赋值语句的值是Unit,会导致x的值也是Unit4.Scala版倒叙循环for(i<- (0 to 10).reverse){ println(i);}5.当函数体包含在{}中,但没有前面
2015-11-15 12:37:43 450
原创 hadoop开发环境搭建
操作系统 :Ubuntu 15.04 开发工具 : Eclipse 4.4 hadoop版本:hadoop 2.6.1准备工具 Ubuntu可以很方便的在各种地方下载到,这里就不列举了 hadoop的软件下载地址,就是官网地址,如下: http://hadoop.apache.org/#Download+Hadoop hadoop的eclipse开发用插件的gitub地址: htt
2015-11-03 12:26:31 635
原创 lua元表介绍
cocos2d-x的相关读取与应用主要是是通过C语言来实现的,具体要使用的话,需要包含头文件和引入静态库#include"sqlite3\include\sqlite3.h"#pragma comment(lib,"sqlite3.lib")
2015-10-20 16:21:10 471
原创 cocos2d-x sqlite的读取和相关操作
cocos2d-x的相关读取与应用主要是是通过C语言来实现的,具体要使用的话,需要包含头文件和引入静态库#include"sqlite3\include\sqlite3.h"#pragma comment(lib,"sqlite3.lib")然后使用提供的sqlite3类型来打开数据库,并查询数据打开数据库方法如下://定义一个sqlite3 *对象sqlite3 *pDB=NULL;int
2015-10-20 00:53:32 401
原创 少年啊,来一发昆特吗(四)——AI的编写
这类纸牌游戏的常用算法通常是博弈树算法,具体的博弈树算法与A*算法的思想比较相似,就是对AI的行动有一个评估值,评估值越高,这手牌的打法就最好,评估值要怎么定,就要看游戏了,纸牌游戏的目的很明确就是赢过对手,也就是玩家,那么对于昆特牌来说估值最高的就是使自己的力量在结束时比玩家的力量高,所以首先需要对整个游戏中所有纸牌类型做个分类,并给予它们相应的估值,当然越高代表行动越正确在昆特牌中
2015-10-19 22:57:48 823
原创 少年啊,来一发昆特吗(二)——昆特牌的触摸
昆特牌在整个游戏中需要三种触摸形式,一种是初始发牌时的换牌阶段,点击可以更换牌(镶嵌到tableview中),二是正常打牌阶段的触摸,点击两次后,将牌打出,第三种是医生的复活技能效果,选择墓地中的牌将其复活到场上,所以在上一节使用了3种触摸函数来达成这三种效果,
2015-09-17 22:44:32 497
原创 少年啊,来一发昆特吗(二)——昆特牌的基础定义
既然是昆特牌游戏那么毫无疑问,昆特牌无疑就是重点需要关注的地方,本节主要讲解怎样实现昆特牌 对于昆特牌来说,总共有四种类型的卡,单位卡(包括普通单位卡和英雄单位卡),天气卡,特殊卡,领导卡,并且单位卡还具有力量值,能力,所属势力,卡牌的名称等属性,所以单纯的sprite是无法实现这些的,需要自定义类来实现,既然是自定义类,那么就需要有自己的构造方法和create方法,cocos2dx当然也提供了创
2015-09-09 21:25:21 952
原创 少年啊,来一发昆特吗(一)——基础环境搭建
最近正在学习cocos2dx,既然学了,当然不能不做点啥,因为最近比较沉迷昆特牌,就决定自己也做一副昆特牌验收一下成果,就有了下面的东西既然是cocos2dx,那么首先肯定需要环境搭建了,接下来就简单的介绍一下cocos2dx的环境搭建,基于cocos2dx 3.3版本一,下载cocos2dx 下载地址:http://www.Cocos2d-x.org/projects/Cocos2d-X/wik
2015-09-09 16:16:56 628
原创 cocos2dx tableview的实际应用
tableview作为一种UI是非常实用的,它可以显示多列元素,并且可以通过滑动来即时加载元素,常用的就是游戏中的物品栏,物品栏在各类游戏中都占有很重要的地位,卡牌游戏中卡牌的整理,RPG中的物品栏等,这些都需要滑动换页,元素点击的要素,而tableview在功能上能够完美的实现这个,接下来以实际的卡牌的整理界面来介绍tableview 一,要使用tableview首先需要继承cocos2dx中t
2015-08-09 00:36:04 7350 1
原创 android学习笔记(十)——音乐播放器的实现
对于音乐播放器来说,可以体现很多种android开发所要运用的技术,比方说数据库的查询,自定义控件的开发,事件的处理,Activity的运用,service的开发,多媒体的运用,布局的运用,BaseAdapter的开发,网络应用等,是非常适合用来做为考察自己android学习的项目 一.自定义控件 android中的按钮并没有直接提供播放的三角式按钮,所以这里需要我们自己实现这部分按钮,要实现的
2015-07-13 15:51:30 2062 1
原创 android学习笔记(九)——动画效果的实现逐帧动画
上面已经介绍了TWEEN的动画,下面就来介绍另一种动画形式逐帧动画的实现方式 定义AnimationDrawable对象,并向其中添加每帧的图像,从而实现帧播放的动画效果,实现方式如下//定义animationDrawable对象 AnimationDrawable anima=new AnimationDrawable(); for(int i=
2015-07-05 17:05:08 433
原创 android学习笔记(九)——动画效果的实现1tween动画
android提供了两种动画的实现方式,一种是tween动画,而另一种则是onframe动画,今天先来介绍一下tween动画: 一,通过java代码来实现 android提供了一个animation类和一个animationset类,即动画类和动画集类,这个就是实现tween动画的基础,实现首先是定义一个animation类,给其赋予动画动作,之后start即可,需要注意的是需要放到view类里
2015-07-05 09:12:41 392
原创 android学习笔记(七)——数据共享
sharedpreferences和文件虽然都能实现数据共享,但是却无法实现数据库的共享,所以android提供了contentProvider的方法来实现数据库的共享,下面就来介绍contentprovider 1.contentprovider的目的是为了实现数据的共享,为了使用contentprovider就需要先重写其中的4种方法oncreate,insert,delete,query,
2015-06-30 22:28:51 418
原创 android学习笔记(五)——android的存储1 sharedpreferences介绍
任何软件或者app都在一定程度上需要数据存储,android提供了sharedpreferences用来存储轻量数据,sharedpreference将数据存储于xml中,位于/data/data/{包名}/shared_prefs下,仿真机可以通过ddms从中取出,下面就来介绍一下 一、sharedpreferences的基本用法——写入 1.毫无疑问,首先需要定义sharedpreferen
2015-06-20 11:00:08 679
原创 android学习笔记四——Service
service是运行后台的一段代码,并且和Activity不同,它不能和用户交互,也不能自行启动,对于service来说,主要用于在后台运行,比方说后台下载,后台播放音乐等,和Activity一样于oncreate后创建,ondestroy后销毁
2015-06-19 14:58:41 376
原创 android学习笔记(三)基础UI组件1——按钮,文本框,CheckBox,Radiobutton介绍
任何一款游戏来说都不会缺少UI的存在,而android自身就提供了多种UI组件,这里先介绍4种一.按钮 最基本的控件,这个控件可以响应点击事件,在android中使用需要重写点击事件,重写的过程使用setOnClickListenr并将View.onClickListener作为参数传入,之后重写onClick方法即可Button button=(Button)this.findViewById(
2015-06-15 21:28:16 612
原创 android学习笔记(二)布局
布局就是指android中如何摆放组件,android主要使用的布局有线性布局,绝对布局,相对布局,表格布局,框架布局这几种形式,下面首先来介绍一下,线性布局一、线性布局 对于线性布局来说,就是指这个组件会在实际摆放时单独占用一行 具体摆放形式如下,关键字是linearlayout,以这个关键字开头就是线性布局,此布局下各组件会单独占用一行的空间,共有两种形式,水平和垂直,定义水平还是
2015-06-15 16:01:39 393
原创 lufylegend引擎俄罗斯方块的实现
lufylegend引擎俄罗斯方块的实现旋转坐标的实现 俄罗斯方块的实现第一步就是旋转坐标的获得,下面将会详细写出推导过程,首先必须要分配好方块的构成,这里需要用4个精灵来形成基本的block,如长方形,L形等,之后就是选择原点坐标和各点的相对坐标,这里先把选转的坐标公式推导一下,如下图: 旋转前的坐标为x,y,旋转前的角度为ζ度,旋转后的坐标为x1,y1,旋转后的角度为(ζ+β)度
2015-06-03 20:42:25 1882
空空如也
sqlite3_exec使用inner join查询失败
2015-10-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人