- 博客(61)
- 收藏
- 关注
原创 c#的构造函数
public FormEditAcount(TAmount Amount, int AOperationType) { InitializeComponent(); OperationType = AOperationType; FAcount = Amount; dateTimePickerDocDate.Value = Convert.ToDateTime(Amount.DocDate);...
2021-12-13 11:09:25
476
原创 c#简单数据类型之间的转换
字符串转时间DateTime dt=Convert.ToDateTime("20100101".Substring(0,4)+"-"+"20100101".Substring(4,2)+"-"+"20071107".Substring(6,2)); //string格式有要求,必须是yyyy-MM-dd hh:mm:ssConvert.ToDateTime(string)时间转字符串DateTime dt = DateTime.Now;//String stext = dt.ToString.
2021-12-13 10:38:07
336
原创 Delphi装饰模式
装饰模式,概括的说就是像已有的功能里面添加新的功能,但是确不会对以前的功能造成影响,(符合软件设计的开放-封闭原则)并且可以根据需要决定何时何地启用哪些功能,以及顺序问题。说到顺序这个问题,其实装饰模式和建造者模式有相似之处,而建造者模式有顺序之分。以下是具体Demo。//模式单元unit Unit2;interfaceuses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Cl.
2021-01-07 17:57:47
192
1
原创 Delphi建造者模式
声明:虽然本文是说的Delphi设计模式,但是设计模式本身并不局限于某一种语言,只是因为我本人对Delphi熟悉一些,所以是用Delphi来表示。 该模式应用场景:当干某一个事情需要经过多个复杂的步骤的时候,而且某一个步骤可能因为时间、地点、人物等条件的不同,所需要的方也不同。举例说明:本文以生产手机来说明。手机的品牌虽然有很多,但是手机的组成部分却是一样的,比如芯片,屏幕、电池、摄像头等,组装的时候,也是按照一定的步骤、顺序组装的,每一个部件缺一不可,这些是相同点(有可能不同的厂...
2021-01-07 14:35:22
123
原创 delphi策略模式
当干某一件事情有多种算法,且未来还会有变化。为了降低代码耦合程度,每一种算法之间互不影响,也为了扩充方便,更好的封装方法,推荐使用策略模式。以下是具体代码。unit uStrategy;{ 最简单的策略方式,应用于算法多变的环境。 1、构建一个包含基本算法父类(普通类,抽象类,接口均可) 2、每一个具体的算法创建一个类,继承自基本算法的接口或者类 3、创建一个管理算法的类 优点:降低了代码耦合程度,每一种算法之间互不影响。扩展非常方便,干掉了客户端的条件判断...
2021-01-06 10:47:12
215
原创 delphi简单工厂模式
关于设计模式,网上有大量类似的文章。不过大多数都是Java、Python之类的语言,我参考了Java的设计模式源码,给出了对应Delphi的设计模式Demo,仅供参考。(设计模式本身是与编程语言无关)以下是Demo源码。参考资料来自于书籍:大话设计模式{ 这是一个工厂模式的简单应用,实现2个数之间的加减乘除运算 当需要增加一个新的运算类型时,只需要增加一个新的运算类,并且在 工厂类的创造实例方法CreateOpera 增加这个新的运算类}unit uCalcu...
2021-01-05 15:21:00
288
原创 Delphi实现链表
在本文中,我把对链表的操作封装到一个类中,此类是单向链表,如果想做成双向列表,需要在PNode里面加入一个Pre,指向当前指针的前一项;如果是环形链表,则需要将尾节点的Next指向头节点。原理都是类似的。一下是这个类的详细代码。供大家参考。(DelphiXe2中实现的)unit Unit2;interfaceuses Winapi.Windows,System.SysUtils, System.Classes,Vcl.Forms;type TStudent=reco...
2020-11-20 14:18:31
999
原创 二叉分查找算法(Java)
说明:二叉分查找是有序查找算法,也就是说,待查找的序列必须是有序的,如果无序,不能用此算法。以整型数组为例来说明。假如待查找的数是iValue,数组是a,数组的中间索引是middle算法原理:将数组从中间截断,分成2部分,分别拿中间索引的数和待查找的数做比较,如果a[middle]>iVallue,说明待查找的数在middle的左侧,反之则在右侧,如果相等,说明找到了iValue。如此反复即可。public int sort(int[] a,int iValue){ int left.
2020-11-20 10:03:19
474
原创 安卓ftp客户端的使用
本文是ftp上传文件的工具类,非原创package com.myweather.tools;import org.apache.commons.net.ftp.FTPClient;import java.io.IOException;import java.io.InputStream;/*** 通过FTP上传文件** @Author lvhaibao* @Date 2018/2/11 21:43*/public class FTPTools { //用于打印日志...
2020-11-04 17:32:45
666
原创 安卓读写文件
//读文件,此处以文本文件为例,也可以写入二进制文件private void writeLog(String sMsg) { try { FileOutputStream out=this.openFileOutput("myLog",MODE_APPEND); out.write(sMsg.getBytes()); out.close(); } catch (Exception e){ ...
2020-11-04 17:27:37
128
原创 安卓广播的使用
1、首先需要定义一个广播类,从BroadcastReceiver继承自类 BroadcastReceiverpackage com.example.broadcarddemo;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class MyBroadcastRece
2020-10-15 11:53:50
284
原创 安卓读取手机联系人
1、在manifest增加权限<uses-permission android:name="android.permission.READ_CONTACTS" /><!-- 读取联系人 --><uses-permission android:name="android.permission.WRITE_CONTACTS" /> <!-- 写入联系人 -->public class MainActivity extends AppCompatActiv.
2020-10-15 11:46:14
405
原创 安卓Activity简单使用
1、启用ActivitybuttonReg.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(MainActivity.this, RegisterActivity.class);startActivity(intent);}});MainActivity是当前act...
2020-10-15 11:25:34
414
原创 C#简单值传递和引用传递
值传递是只参数在传参前和传参数的值没有发生变化;引用传递也叫地址传递,当它的值在方法中发生改变后,会影响传参前的值。请看下面的例子。private void Add(int a) { a = a + 1; }private void Add2(ref int a) { a = a + 1; }//如果传参的时候,前面没有标识ref,表示采用值传递(仅局限于简单数据类型)int...
2020-07-21 22:11:22
579
原创 C#动态数组ArrayList
初步了解TArrayListTArrayList 本身是一个动态数组,与普通数组不同的是,它的大小可以改变。另外TArrayList中还可以加入对象,不仅仅局限于简单数据类型加入字符串ArrayLista = newArrayList();a.Add("gang");a.Add("zhi");a.Add("chen");for(inti = 0; i < a.Coun...
2020-05-30 17:21:07
217
原创 HashTable的使用
在.Net程序中,HashTable是以键值对的形式存在,每一个Key对应一个Value。Key和Value都是object类型。下面是具体的DemousingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Thr...
2020-05-27 14:29:00
267
原创 c#常用字符串方法
1、字符串比较:3种方法 ==/CompareTo/EqualsButton btn = (Button)sender;if (btn.Text=="比较1"){MessageBox.Show("你点击了button1");}else if (btn.Text.CompareTo("比较2")==0){MessageBox.Show("你点击了button2");}else if (b...
2020-05-18 21:08:43
256
原创 Delphi对象创建与释放
前言:做Delphi很多年了,打算留下了啥,所以准备写博客了。关于对象的创建和释放,相信大家都非常熟悉了,在这里我打算浅谈一下。本文中我将对象分为2大类,组件对象和非组件对象,暂时不考虑接口以及实现接口的类。组件对象,也就是从TComponent继承下来的类对象。其它的就归于非组件对象。各位不要太过纠结,给我举反例。非组件对象比如Tlist、TCollection等等,此类对象必...
2020-04-15 21:59:40
1350
原创 idea创建web项目
再次,我讲详细介绍使用idea创建第一个web项目,适用于刚使用idea的同学和刚接触web项目的朋友。1、首先选择createProject,然后进入下图界面2、3、在project name中输入项目名字,然后点击finish即创建完成4、在web目录下,创建一个文件,index.html,作为网站的首页5、引入tomcat包servlet-api.jar(该文件位于tom...
2019-08-02 16:39:14
428
原创 Java连接MySQL
本文主要是简单介绍Java是如何连接MySQL,和查询数据返回数据集,在做之前,需要导入MySQL的架包package com.demo;import java.sql.*;public class MyMySqlOperator { static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static f...
2019-05-21 20:53:29
100
原创 Java的UDP服务端
本文主要是讲Java的UDP服务端接收客户端消息的实现过程package com.Demo;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketExcepti...
2019-05-15 21:38:52
2826
原创 java的UDP客户端
关于UDP和TCP协议的区别可参考https://www.cnblogs.com/longiang7510/p/5441502.html简单的区分可以概括为TCP传输更可靠,效率比UDP低,所以二者都有各自的应用场景。在Java中,客户端的socket设置好服务端的IP和端口,组装好数据包,就可以直接向服务端发送数据。下面是详细代码:package com.Demo;impor...
2019-05-15 21:28:45
1677
原创 Java程序退出前的处理
很多时候,我们需要在程序退出前执行特定的过程,比如关闭连接、解除端口绑定等,而我们却并不清楚程序在什么时候结束,假如有析构方法,一切问题似乎就迎刃而解了,遗憾的上Java中并没有C++中的析构,Java中有析构方法,但是JVM不能保证在程序退出前一定会执行,所以我们需要寻求其他的解决办法。 对当前应用程序对象的获得,Java通过Runtime静态方法:Runti...
2019-05-15 21:18:42
3371
原创 Java socket客户端
java socket客户端与服务端通信源码package com.main;import java.io.*;import java.net.Socket;import java.net.UnknownHostException;public class MySocketClient { private Socket soc = null; private String ...
2019-05-13 22:15:52
10320
原创 Java socket服务端
本文主要讲解java socket服务端通信内容,服务端监听客户端,并且获取客户端的消息。监听的主要代码是一个while死循环,因为需要实现持续监听。读者可重点阅读MySocketServer类的代码。详细代码如下:package com.test;import java.io.*;import java.net.*;import java.util.Scanner;pub...
2019-05-13 22:12:20
4514
原创 Java简单IO介绍
Java IO流类结构图,转载自https://www.cnblogs.com/zhaoyanjun/p/6292384.html在这里不对所有的类进行举例,只对FileReader/FileWriter, 文本输入输出FileInputStream,FileOutputStream: 字节输入输出下面是具体的代码示例:package com.main;import ...
2019-05-10 23:58:26
229
原创 Java线程的方法sleep,join,yield
Java在多线程开发中,这3个方法sleep,join,yield使用频率很高,下面简单介绍一下这3个方法1、Thread.sleep这是一个非Java实现的方法,它的作用就是让当前线程睡眠,到时间后,再次进入就绪状态比如: Thread.sleep(1000) 表示当前线程睡眠1秒钟,1秒钟过后,线程进入就绪状态,等待被分配时间片2、Thread.yield也是一个非Java...
2019-05-06 23:00:39
199
原创 Java多线程的使用
Java多线程有2种方式,继承Thread类和实现Runnable接口2种。下面将以代码说明:package com.mainpac;public class Main { public static void main(String args[]){ //继承类线程 MyThread1 t1= new MyThread1(); t1...
2019-05-06 21:52:29
138
原创 Java集合框架之HashMap
//Hash是以键值对的形式存在public class MainClass { public static void main(String[] args) { // TODO 自动生成的方法存根 HashMapDemo hash = new HashMapDemo(); hash.addMap("01", "gang");...
2019-05-03 20:46:08
87
原创 Java集合之HashSet
HashSet与ArrayList,linkedList都是集合框架的内容,在访问方式上,HashSet只能使用Iterator,ArrayList,linkedList可以使用索引和Iterator,并且HashSet中的元素不允许重复。本文不在举例具体如何使用,如果不会,请参考上文Java集合类ArrayList和linkedList。当我们需要把一个对象添加到HashSet中去,如果对象...
2019-05-03 14:37:03
102
原创 Java集合类ArrayList与LinkedList
上图是集合框架的结构图,ArrayList和LinkedList均继承自List类,都是线性结构,在具体使用上,在访问和遍历方式上均相同,不同点在于ArrayList是线性顺序结构,类似数组;LinkedList则是线性链表结构。以下是Demo,由于linkedList在本Demo的使用方式上与ArrayList相同,故Demo只做了ArrayList。上图来自:https://www.run...
2019-05-03 10:18:03
231
原创 java执行SQLServer语句
package mainPac;import java.sql.*;public class DatabaseOperator { private Connection con = null; //构造方法 public DatabaseOperator(){ super(); connectDatabase(); }...
2019-05-02 21:45:03
1175
原创 java冒泡排序和快速排序
package common;public class SortClass { //交换数组中2项的值 public void exangeIntValue(int a[],int i,int j){ int temp = 0; temp = a[i]; a[i]= a[j]; a[j]= temp; } //冒泡...
2019-05-02 21:36:41
130
原创 Java简单数据类型与字符串的转换
本文将介绍Java简单数据类型与字符串之间的转换,为方便记忆,每一种转换只介绍一种方法,我个人认为最有利于记忆的方法。1、整型转字符串利用包装类Integereg: int a=10; String c=Integer.toString(a);2、浮点转字符串(Float和double方法类似eg float a=10.3f String c=Float.toString(a...
2019-04-28 22:26:47
129
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人