system

正则表达式贪婪与非贪婪模式

僤鯓⒐⒋嵵緔 提交于 2020-03-26 09:07:43
之前做程序的时候看到过正则表达式的贪婪与非贪婪模式,今天用的时候就想不起来了,现在这里总结一下,以备自己以后用到注意。 1.什么是正则表达式的贪婪与非贪婪匹配    如:String str="abcaxc";     Patter p="ab*c";   贪婪匹配: 正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。如上面使用模式p匹配字符串str,结果就是匹配到: abcaxc (ab*c)。    非贪婪匹配 :就是匹配到结果就好,就少的匹配字符。如上面使用模式p匹配字符串str,结果就是匹配到: abc (ab*c)。 2.编程中如何区分两种模式    默认是贪婪模式;在量词后面直接加上一个问号?就是非贪婪模式。   量词:{m,n}:m到n个      *:任意多个      +:一个到多个      ?:0或一个 3.程序实例 使用Snort的规则一条规则的一部分作为匹配文本,匹配出其中的content部分。 1 import java.util.regex.Matcher; 2 import java.util.regex.Pattern; 3 4 public class RegularTest { 5 6 public static void main(String[] arg){ 7 String text="(content:\"rcpt to root

初识Android下的busybox与toolbox

♀尐吖头ヾ 提交于 2020-03-25 23:37:29
2020-03-25 关键字: 原来 Android 中的 busybox 与 toolbox 是两套程序。 busybox 是一个嵌入式领域常用的软件。它是一个命令集工具,像传统的PC端的Linux系统上的大多数命令的实现都被封装在 busybox 程序中。在嵌入式平台上就可以将这些命令以参数的形式传递给 busybox 工具集,进而实现相应的功能。 那为什么嵌入式平台不能直接像PC端那样,直接将各个命令所对应的程序预置在板端,而非要包装在一个 busybox 中呢?其最主要的原因还是因为这些命令所对应的程序加起来太过庞大,嵌入式平台的存储资源通常是比较有限的,为了节约存储空间,就将这些命令集合在一个程序中。那集合以后的程序又凭什么能比PC端那种分散开来的形式体积要小呢?一个主要的原因是因为这些命令中,有不少命令的实现都是相同的。busybox 就将这些相同的部分提取出来让多个命令共用。如此一来随着命令数量的增多,就能比较大程度地缩减程序体积了。 Android平台是基于嵌入式Linux的。通过串口或者 adb shell 可以像在嵌入式Linux平台上那样敲击命令以实现某些目的。 Android平台的命令系统一般而言可以认为分为两类: 1、busybox 实现的命令系统 2、toolbox 实现的命令系统 toolbox 命令系统是Android平台默认的命令系统。 例如

Java学习day29-List集合

浪子不回头ぞ 提交于 2020-03-25 20:42:21
一、List和ArrayList 1.List代表一个元素有序、且可重复的集合,集合中的每个元素都有其对应的顺序索引。 2.List允许使用重复元素,可以通过索引来访问指定位置的集合元素。 3.List默认按元素的添加顺序设置元素的索引。 4.List集合里添加了一些根据索引来操作集合元素的方法。 Collection接口<—(继承)—List接口<—(实现)—ArrayList类 package day16; import java.util.ArrayList; import java.util.List; public class Test5 { public static void main(String[] args){ List<String> list = new ArrayList<String>(); list.add("b");//第一个,索引下标就是0,List默认按元素的添加顺序设置元素的索引。 list.add("d");//索引下标1 list.add("c");//索引下标2 list.add("a");//索引下标3 list.add("d");//索引下标4,.List允许使用重复元素 System.out.println(list); System.out.println(list.get(2));//List可以通过索引来访问指定位置的集合元素

数据类型拓展

只愿长相守 提交于 2020-03-25 16:18:20
public class Demo03 { public static void main(String[] args) { // 一、整数拓展 进制 二进制0b 十进制 八进制0 十六进制0x int i=10; int i2=010; //八进制0 int i3=0x10; //十六进制0x System.out.println(i); System.out.println(i2); System.out.println(i3); long i4=0x1111111111111111L; System.out.println(i4); System.out.println("=================================================="); // 二、 浮点数拓展 银行业务怎么表示? 钱 System.out.println("=================================================="); //BigDecimal 数学工具类 //----------------------------------------- //float //有限的 离散 舍入误差 大约 接近但不等于 //double //最好完全避免使用浮点数进行比较 //最好完全避免使用浮点数进行比较 /

Java工具类04StringUtils常用操作

雨燕双飞 提交于 2020-03-25 15:03:35
1.字符串操作(常用) 1.1commons-lang3 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.9</version></dependency> https://www.cnblogs.com/hahajava/p/9993491.html 常用操作 1.1.1判空 StringUtils.isEmpty();StringUtils.isNotEmpty(); 1.1.2以--结尾,开始 //判断结尾是否相同System.out.println(StringUtils.endsWith("abcdef", "def"));//判断结尾是否相同,不区分大小写System.out.println(StringUtils.endsWithIgnoreCase("abcdef", "Def"));//判断开始部分是否与二参数相同System.out.println(StringUtils.startsWith("中国共和国人民", "中国"));//判断开始部分是否与二参数相同。不区分大小写System.out.println(StringUtils.startsWithIgnoreCase("中国共和国人民", "中国"));

Java内部类详解

六月ゝ 毕业季﹏ 提交于 2020-03-25 09:16:54
在一个类的里面再定义的类,叫做内部类,也可以叫做寄生类,在平时的编程中很少用到内部类,而且显的特别乱。 但是内部类也是有很大作用的: 提供了更好的封装,把类隐藏在外部类中,这样其他的类不能调到。 内部类可以使用外部类的所有数据,包括private修饰的。 在jdk中哟哟很多地方都用到了内部类,在集合的源码中,比如在ArrayList中为了实现Iterator接口,就利用了内部类实现了Iterator接口。 包含内部类的类叫做顶层类,顶层类只能用public和默认修饰,内部类可以用四种权限修饰符的任意一个。我们要访问内部类的时候,要通过外部类访问内部类,不能直接访问内部类。 package demo_Inner; public class Test { public static void main(String[] args) { Outer outer = new Outer(); outer.print();//外部类 Outer.Inner inner = new Outer().new Inner(); inner.print();//内部类 } } class Outer{ public class Inner{ public void print() { System.out.println("内部类"); } } public void print() {

toString()方法

不羁岁月 提交于 2020-03-25 08:34:28
toString()方法的功能是将一个对象返回为字符串形式,它会返回一个String实例。在实际的应用中通常重写toString()方法,为对象提供一个特定的输出模式。当这个类转换为字符串或与字符串连接时,将自动调用重写的toString()方法。 1 public class ToStringTest { 2 static int i = 1; 3 4 public static void main(String[] args) { 5 System.out.println("love" + new ToStringTest()); 6 7 ToStringTest a = new ToStringTest(); 8 a.i++; 9 System.out.println("me " + a.i); 10 } 11 12 public String toString() { 13 System.out.print("I "); 14 return " java"; 15 } 16 } 上面代码输出结果为: 代码中创建了一个ToStringTest类,在类中定义了一个静态常量'i'。 首先在类中重写了toString()方法。 1 public String toString() { 2 System.out.print("I "); 3 return " java"; 4 }

如何将DataGrid中的数据倒入到Excel (客户端)

情到浓时终转凉″ 提交于 2020-03-24 20:59:37
现在经常能碰到客户要求打印报表的问题,我们知道B/S架构下,打印一般只有两种,一种用水晶报表,一种就是将数据倒入到Excel中进行打印,相比于第一种来说,Excel的优势还是很明显的!首先,水晶报表的价钱非常昂贵,对于一个中小型软件开发公司来说,不可把那么多资金投入到购买相关的开发工具产品当中,如果选用vs.net 自带的报表,又经常难以满足客户的真正需要。如果用倒入Excel的办法,一来可以节省不小的资金,二来也可以减短开发的周期,那我们何乐而不为呢!!! 下面我举个实际的例子,以下的代码测试已通过 //在.cs 里 using System.Configuration; //须在Config中指定连接的数据库 using common_function; //声明 namespace using System.Data .SqlClient; private void Page_Load(object sender, System.EventArgs e) { if(!Page.IsPostBack) { BindGrid(); } } private void BindGrid() { string sql_str="select * from repair_now where repair_sort_id=''"; MyDataGrid.DataSource =Public

第三次作业

和自甴很熟 提交于 2020-03-24 12:24:04
1.输入一个年份,判断是不是闰年(能被4整除但不能被100整除,或者能被400整除) package learn; import java.util.Scanner; public class day03 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("请输入一个年份"); int year = input.nextInt(); if (year % 4 == 0 || year % 400 == 0 && year % 100 != 0 ) { System.out.println("此年份是闰年"); }else { System.out.println("此年份不是闰年"); } } } 2.输入一个4位会员卡号,如果百位数字是3的倍数,就输出是幸运会员,否则就输出不是. package learn; import java.util.Scanner; public class day03 { public static void main(String[] args) { // TODO Auto-generated method stub

重新复习-java 多态

ぐ巨炮叔叔 提交于 2020-03-24 11:42:09
多态的定义: 指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)简而言之就是: 对于同一动作做出的响应产生不同的结果 多态存在的必要条件: 在继承的基础上 要有重写 父类引用指向子类对象(即向上转型) 多态存在的好处: 可替换性 (substitutability)。多态对已存在代码具有可替换性。例如,多态对圆Circle类工作,对其他任何圆形几何体,如圆环,也同样工作。 可扩充性 (extensibility)。多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。 接口性 (interface-ability)。多态是超类通过方法签名,向子类提供了一个共同接口,由子类来完善或者覆盖它而实现的。 灵活性 (flexibility)。它在应用中体现了灵活多样的操作,提高了使用效率。 简化性 (simplicity)。多态简化对应用软件的代码编写和修改过程,尤其在处理大量对象的运算和操作时,这个特点尤为突出和重要。 多态的实现方式: 继承和接口 继承实现多态: 对于指向子类对象的父类引用,在处理该引用时,它适用于继承该父类的所有子类,子类对象的不同,对方法的实现也就不同,执行相同动作产生的行为也就不同。 如果父类对象是抽象类,则继承了该抽象类的子类必须父类中的所有抽象方法