Java语言
lwtb
这个作者很懒,什么都没留下…
展开
-
正则表达式的威力1_匹配matches()与切割split()
第一次学正则表达式,感觉用途很广啊!/*正则表达式:符合一定规则的表达式 用于专门操作字符串,便捷简单*/class RegexDemo/*对QQ号码进行校验,要求:5~15位,0不能开头,只能是数字*/{ public static void main(String[] args) { checkQQ_1(); } public static原创 2015-11-23 18:53:49 · 590 阅读 · 0 评论 -
Java字符串String:equals方法和==的区别
equals方法和==的区别 首先大家知道,String既可以作为一个对象来使用,又可以作为一个基本类型来使用。这里指的作为一个基本类型来使用只是指使用方法上的,比如String s = "Hello",它的使用方法如同基本类型int一样,比如int i = 1;,而作为一个对象来使用,则是指通过new关键字来创建一个新对象,比如String s = new String("Hel转载 2017-03-23 19:32:46 · 661 阅读 · 0 评论 -
抽象类和接口的区别
抽象类和接口的区别接口(interface)可以说成是抽象类的一种特例,接口中的所有方法都必须是抽象的。接口中的方法定义默认为public abstract类型,接口中的成员变量类型默认为public static final (这里需要说一点,既然一个变量被final修饰了,那么这个变量就是一个常量!!!!!变量必须初始化成常量!!!!!)下面比较一下两者转载 2017-04-09 22:58:11 · 461 阅读 · 0 评论 -
继承中的方法调用顺序
转自http://blog.csdn.net/zhumintao/article/details/53818972#comments今天在牛客网刷题时碰到了这样一道题,感觉是很基础的知识点,但是要做出来并不容易,先来看一下题目[java] view plain copy /** * Created by zmt on 2016/转载 2017-04-22 17:06:07 · 939 阅读 · 0 评论 -
剑指offer_根据前序和中序确定二叉树
/*重建二叉树:根据前序和中序确定二叉树思路:递归,找到前序的第一个元素在中序中的位置,该位置之前的元素均为左子树,该位置之后的元素均为右子树,递归处理左右子树*/class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } }原创 2017-06-05 20:32:18 · 373 阅读 · 0 评论 -
剑指offer_用两个栈实现队列
/*用两个栈实现队列:要做到先进先出,stack2作为辅助栈:把第一个栈中的元素按照先进后出顺序取出放入第二个栈中,再从第二个栈中弹出来,如此便做到了先进先出;再将弹出完毕的stack2中剩余元素放回stack1;**/import java.util.Stack;class QueneWithTwoStacks { public static Stack stack1原创 2017-06-05 21:36:56 · 191 阅读 · 0 评论 -
剑指offer_调整数组顺序使得奇数位于偶数前面
/*输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。*/class ReOrderArray { public static int[] reOrderArray(int[] arr) { int[] temp=new int [arr.length];原创 2017-06-11 11:57:32 · 175 阅读 · 0 评论 -
StringBuffer和StringBuilder的区别
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常转载 2017-08-22 16:13:02 · 136 阅读 · 0 评论 -
Java之HashMap与HashTable
集合类之番外篇:深入解析HashMap、HashTable 作者:egg 新浪微博:http://weibo.com/xtfggefJava集合类是个非常重要的知识点,HashMap、HashTable、C转载 2017-08-22 21:53:44 · 214 阅读 · 0 评论 -
IO流简单用法
/*字符流从文本文件读取*/import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class BufferedReaderDemo { public static void main原创 2017-09-02 22:38:02 · 217 阅读 · 0 评论 -
求链表中倒数第k个结点-Java实现
/*需求:求链表中倒数第k个结点思路:需要有两个指针,第一个指针先走k-1步,然后两个指针一起走 当第一个指针走到链表结尾时,第二个指针到达倒数第k个结点解法:1,Java如何定义链表? 链表是一个类,属性包括头结点和结点总数(此处必须考虑这个属性,因为需要跟k比较) 每个结点又是一个类,属性包括数据域和指向下一个结点的引用2,先创建一个链表3,*///结点类clas原创 2017-02-14 10:51:23 · 353 阅读 · 0 评论 -
剑指offer_字符串转整数
/*分析:str[0]-'0';假如str[0]存放的数据类型是字符‘1’,那么减去‘0’就得到一个整形数字1,而不是字符型‘1’。字符‘0’的ASCLL值是48,而字符‘1’是49,所以str[0]-'0'相当于49-48=1*/class StrToInt{ /** 功能:将字符串转换成整数 @author ldp @parm 待转换字符串 @return in原创 2017-01-12 18:38:33 · 201 阅读 · 0 评论 -
正则表达式的威力3_获取 find()和group()
/*正则表达式功能:获取:将字符串中符合规则的子串取出步骤:1,将正则表达式封装成对象2,让正则对象和要操作的字符串关联3,获取正则匹配引擎4,通过引擎对符合规则的子串进行操作,比如取出*/import java.util.regex.*;class RegexDemo2 { public static void main(String[] args) {原创 2015-11-26 20:26:04 · 552 阅读 · 0 评论 -
正则表达式的威力4_小练习校验邮箱
import java.util.*;class RegexTest1 { public static void main(String[] args) { //ipSort(); checkMail(); } /* 将下列字符串转换成,我要学编程 1,如果只想知道该字符串知否符合规则,用匹配 2,如果想将已有的字符串变成另一个字符串,用替换 3,想要按照自定义的原创 2015-11-26 21:28:50 · 343 阅读 · 0 评论 -
正则表达式的威力2_替换replaceAll()
/*正则表达式:符合一定规则的表达式 作用:用于专门操作字符串 特点:用一些特定的符号来表示一些代码操作,简化书写, 所以学习正则表达式就是在学习一些特殊符号的使用 好处:简化对字符串的复杂操作 弊端:符号定义越多,正则越长,阅读性越差具体操作功能:1,匹配:matches()方法2,切割: split()方法3,替换:replaceAll()*/c原创 2015-11-25 22:39:14 · 443 阅读 · 0 评论 -
Java中数组声明和初始化
在c语言中,通常我们在声明数组的时候,可能不会对其赋初值并且可以指定数组的元素个数,如:int a[10];之后的语句可以对数组a[10]进行直接的赋值和操作。在java中,声明数组会有所不同,如 int[ ] a(或者int a[] ,推荐用第一种,因为第一种的语句更能体现java引用机制]),int[ ]是一个新的数据类型,int在java中是基本类型,int[ ]则是其对转载 2015-11-26 12:23:23 · 2204 阅读 · 0 评论 -
正则表达式的威力5_网页爬虫,爬邮件地址
/*正则表达式-网页爬虫(蜘蛛),爬邮箱*/import java.io.*;import java.util.regex.*;import java.net.*;class RegexTest2{ public static void main(String[] args) throws Exception { //getMails(); getMails_1()原创 2015-11-26 22:40:35 · 495 阅读 · 0 评论 -
Java中equals和==的区别
1,基本数据类型。int x = 3;int y = 3;System.out.println(x==y);//true对于基本数据类型的值只能用 == 比较值是否相等。2,引用数据类型。Demo d1 = new Demo();Demo d2 = new Demo();System.out.println(d1==d2);//比较的是d1和d2的内存地址是否相等转载 2015-12-02 10:40:52 · 313 阅读 · 0 评论 -
抽象类与接口的区别
关键字: 抽象类与接口的区别abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于 abstract class和interface的选择转载 2017-01-12 10:02:23 · 163 阅读 · 0 评论 -
使用TCP协议实现客户端和服务器数据传输
/*客户端和服务端互访,传输字节流*/import java.net.*;import java.io.*;class TCPClient2 { public static void main(String[] args) throws Exception { Socket s=new Socket ("192.168.191.1",10004); OutputStrea原创 2017-09-03 17:22:27 · 4082 阅读 · 0 评论