java快速入手文档基础总结资料.docx

上传人:b****3 文档编号:4470105 上传时间:2022-12-01 格式:DOCX 页数:24 大小:358.87KB
下载 相关 举报
java快速入手文档基础总结资料.docx_第1页
第1页 / 共24页
java快速入手文档基础总结资料.docx_第2页
第2页 / 共24页
java快速入手文档基础总结资料.docx_第3页
第3页 / 共24页
java快速入手文档基础总结资料.docx_第4页
第4页 / 共24页
java快速入手文档基础总结资料.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

java快速入手文档基础总结资料.docx

《java快速入手文档基础总结资料.docx》由会员分享,可在线阅读,更多相关《java快速入手文档基础总结资料.docx(24页珍藏版)》请在冰豆网上搜索。

java快速入手文档基础总结资料.docx

java快速入手文档基础总结资料

1Eclipse相关

1.1常见错误

eclipse项目红色感叹号

应该是你的JDK路径不一致,重新设置下就好了

Addlibraryjresystemlibrary

1.2编辑器正则表达式替换

删除空行:

^\s*\n

删除

2Java基础

2.1数组

声明:

int[]s;

ints[];

定义:

S=newint[5];

1.动态初始化:

数组定义与为数组分配空间和赋值的操作分开进行;

2.静态初始化:

在定义数字的同时就为数组元素分配空间并赋值;

3.默认初始化:

数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化.

2.2文件输入输出流

Input读入output写出

FileOutputStreamoutputStream=newFileOutputStream(contextRealPath+"/"+fileName);

InputStreaminputStream=item.getInputStream();

inputStream.read();

outputStream.write();

3Java类集

collection:

父接口;

Set:

接口---一个实现类:

HashSet

List:

接口---三个实现类:

LinkedList,Vector,ArrayList

3.1List(Collection的一个子接口——允许重复且有序)

3.1.1Arraylist简单操作

Listmylist=newArrayList();//没有长度限制

/***************插入元素******************/

mylist.add("hello");

mylist.add(0,"MLDN");//在位置0插入元素

/***************删除元素******************/

mylist.remove(0);//两种删除方式

mylist.remove("world");//此处为string,若为匿名对象,可能无法删除。

/***************输出元素1******************/

for(inti=0;i

{

System.out.println(mylist.get(i));

}

或System.out.println(mylist);

3.1.2Linklist简单操作

LinkedListlink=newLinkedList();

/***************添加数据***********************/

link.add("A");

//System.out.println(link);

link.addFirst("FIRST");

link.addLast("LAST");

//System.out.println(link);

System.out.println("链表头:

"+link.getFirst());

System.out.println("链表头:

"+link.getLast());

/***************读取数据***********************/

for(inti=0;i

{

System.out.println(link.element());

}

3.1.3VectorandEnumeration

Vectorvec=newVector();

vec.add("a");

vec.add("b");

vec.add("c");

Enumerationenume=vec.elements();

while(enume.hasMoreElements())

{

System.out.print(enume.nextElement()+"、");

}

HashMap

Mapmap=newHashtable();

/*

*Hashtable和HashMap的区别:

*HashMapJDK1.0时推出,同步,性能低,线程安全

**/

map.put("zhangsan",1);

map.put("zhangsan",2);

map.put("lisi",3);

map.put("wangwu",4);

Integervalue=map.get("zhangsan");//根据key取value

/**************集合返回所有的key***************/

Setset=map.keySet();

/**************取所有value***************/

Collectioncol=map.values();

Iteratoritervalue=col.iterator();

/**************取所有的键值对***********/

Iteratorkeyiter=set.iterator();

while(keyiter.hasNext())

{

Stringkey=keyiter.next();

System.out.println(key+"-->"+map.get(key));

}

3.2Set不允许重复的子接口

3.2.1HashSet(散列存放的子类)

Setset=newHashSet();

set.add("A");

set.add("B");

set.add("C");

set.add("C");//可放入重复元素,但是不重复存储和显示

System.out.println(set);

3.2.2TreeSet(排序存放的子类)

Setset=newTreeSet();

//有序的集合

set.add("B");

set.add("A");

set.add("C");

System.out.println(set);

3.3集合输出

遍历的方式有如下四种,它们的使用率是不一样的:

Iterator--95%

ListIterator--1%

Enumeration--4%

foreach--0%

3.3.1Iterator(迭代输出)

ListallList=newArrayList();

allList.add("a");

allList.add("b");

allList.add("c");

Iteratoriter=allList.iterator();

while(iter.hasNext())

{

Stringstr=iter.next();//取当前元素,指针下移。

if("c".equals(str))

{

//iter.remove();//正确,但是很少使用

allList.remove(str);//错误,不能直接用集合中的remove方法。

}

}

3.3.2ListIterator(双向迭代输出)

ListallList=newArrayList();

allList.add("a");

ListIteratoriter=allList.listIterator();

System.out.println("从前向后输出:

");

while(iter.hasNext())

{

System.out.print(iter.next()+"、");

}

System.out.println("从后向前输出:

");

while(iter.hasPrevious()){

System.out.print(iter.previous()+"、");

}

3.3.3Foreach(新的支持)

1.        List all = new ArrayList();  

2.        all.add("hello");  

3.        all.add("world");  

4.        for (String str :

 all) {  

5.            System.out.println(str);  

6.        }  

3.4Map接口

3.4.1HashMap

/*

*Map的输出:

*1.Set>entrySet()获取Set集合

*2.通过Set为Iterator进行初始化

*3.通过Iterator取出每一个MapEntry

*4.通过Map.Entry进行key与value的分离

**/

Mapmap=newHashMap();

map.put("zhangsan",1);

map.put("zhangsan",2);

map.put("lisi",3);

map.put("wangwu",4);

Integera=map.get("wangwu");

/*******遍历方法1********************/

Set>set=map.entrySet();

Iterator>iter=set.iterator();

while(iter.hasNext())

{

Map.Entryme=iter.next();

System.out.println(me.getKey()+"-->"+me.getValue());

}

/**********方法2************************/

for(Map.Entryme:

map.entrySet()){

System.out.println(me.getKey()+"-->"+me.getValue());

}

/******keyset*******/

Setss=map.keySet();

Iteratorit=ss.iterator();

while(it.hasNext()){

Stringkey=it.next();

System.out.println(key+"|-->"+map.get(key));

}

3.4.2TreeMap(有序的存放)

/*treemap可以进行排序*/

Mapmap=newTreeMap();

map.put("zhangsan",1);

map.put("zhangsan",2);

map.put("lisi",3);

map.put("wangwu",4);

Setset=map.keySet();

Iteratoriter=set.iterator();

while(iter.hasNext()){

Stringkey=iter.next();

System.out.println(key+"-->"+map.get(key));

}

3.4.3Hashtable

1. Map all = new Hashtable();  

2.        all.put("BJ", "BeiJing");  

3.        all.put("NJ", "NanJing");  

4.        Set> set = all.entrySet();  

5.        Iterator> iter = set.iterator();  

6.        while (iter.hasNext()) {  

7.            Map.Entry me = iter.next();  

8.            System.out.println(me.getKey() + " --> " + me.getValue());  

9.        }  

3.5Stack类

1.  Stack s = new Stack();  

2.        s.push("A");  

3.        s.push("B");  

4.        s.push("C");  

5.        System.out.println(s.pop());  

6.        System.out.println(s.pop());  

7.        System.out.println(s.pop());  

8.        System.out.println(s.pop()); 

3.6其他

3.6.1collections

ListallList=newArrayList();

Collections.addAll(allList,"e.hello","d.hello");

Collections.sort(allList);

3.6.2compareTo

classPersonTestimplementsComparable{

privateStringname;

privateintage;

publicPersonTest(Stringname,intage){

this.name=name;

this.age=age;

}

publicStringtoString(){

return"姓名:

"+this.name+",年龄:

"+this.age;

}

@Override

publicintcompareTo(PersonTesto){

if(this.age

return1;

}elseif(this.age>o.age){

return-1;

}else{

returnpareTo(o.name);

}

}

}

publicclassComparableTest{

publicstaticvoidmain(String[]args){

Setall=newTreeSet();

PersonTesta=newPersonTest("张三",20);

PersonTestb=newPersonTest("张三",30);

PersonTestc=newPersonTest("张三",40);

all.add(a);

all.add(b);

all.add(c);

System.out.println(all);

System.out.println(pareTo(b));

}

}

4正则表达式

4.1正则表达式语法

正则表达式符号:

句点符号(.):

匹配所有字符,如t.n

方括号([]):

定义匹配集合,单字符匹配,如t[aeio]n

或符号(|):

或运算,如t(a|e|i|o|oo)n

$:

匹配行结束符。

^匹配一行的开始。

/转义符,用来将元字符当作普通的字符来进行匹配。

^“^”符号称为“否”符号。

常用的限定符

代码/语法说明

*重复零次或更多次

+重复一次或更多次

?

重复零次或一次

{n}重复n次

{n,}重复n次或更多次

{n,m}重复n到m次

常用的元字符:

代码说明

.匹配除换行符以外的任意字符

\w匹配字母或数字或下划线或汉字

\s匹配任意的空白符

\d匹配数字

\b匹配单词的开始或结束

^匹配字符串的开始

$匹配字符串的结束

常用的反义代码

代码/语法说明

\W匹配任意不是字母,数字,下划线,汉字的字符

\S匹配任意不是空白符的字符

\D匹配任意非数字的字符

\B匹配不是单词开头或结束的位置

[^x]匹配除了x以外的任意字符

[^aeiou]匹配除了aeiou这几个字母以外的任意字符

4.2常用正则表达式

1[正则表达式]文本框输入内容控制

2整数或者小数:

^[0-9]+\.{0,1}[0-9]{0,2}$

3只能输入数字:

"^[0-9]*$"。

4只能输入n位的数字:

"^\d{n}$"。

5只能输入至少n位的数字:

"^\d{n,}$"。

6只能输入m~n位的数字:

"^\d{m,n}$"

7只能输入零和非零开头的数字:

"^(0|[1-9][0-9]*)$"。

8只能输入有两位小数的正实数:

"^[0-9]+(.[0-9]{2})?

$"。

9只能输入有1~3位小数的正实数:

"^[0-9]+(.[0-9]{1,3})?

$"。

10只能输入非零的正整数:

"^\+?

[1-9][0-9]*$"。

11只能输入非零的负整数:

"^\-[1-9][]0-9"*$。

12只能输入长度为3的字符:

"^.{3}$"。

13只能输入由26个英文字母组成的字符串:

"^[A-Za-z]+$"。

14只能输入由26个大写英文字母组成的字符串:

"^[A-Z]+$"。

15只能输入由26个小写英文字母组成的字符串:

"^[a-z]+$"。

16只能输入由数字和26个英文字母组成的字符串:

"^[A-Za-z0-9]+$"。

17只能输入由数字、26个英文字母或者下划线组成的字符串:

"^\w+$"。

18验证用户密码:

"^[a-zA-Z]\w{5,17}$"正确格式为:

以字母开头,长度在6~18之间,只能包含字符、数字和下划线。

19验证是否含有^%&',;=?

$\"等字符:

"[^%&',;=?

$\x22]+"。

20只能输入汉字:

"^[\u4e00-\u9fa5]{0,}$"

21验证Email地址:

"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。

22验证InternetURL:

"^http:

//([\w-]+\.)+[\w-]+(/[\w-./?

%&=]*)?

$"。

23验证电话号码:

"^(\(\d{3,4}-)|\d{3.4}-)?

\d{7,8}$"正确格式为:

"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。

24验证身份证号(15位或18位数字):

"^\d{15}|\d{18}$"。

25验证一年的12个月:

"^(0?

[1-9]|1[0-2])$"正确格式为:

"01"~"09"和"1"~"12"。

26验证一个月的31天:

"^((0?

[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。

27匹配中文字符的正则表达式:

[\u4e00-\u9fa5]

28匹配双字节字符(包括汉字在内):

[^\x00-\xff]

29应用:

计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

30String.prototype.len=function(){returnthis.replace(/[^\x00-\xff]/g,"aa").length;}

31匹配空行的正则表达式:

\n[\s|]*\r

32匹配html标签的正则表达式:

<(.*)>(.*)<\/(.*)>|<(.*)\/>

33匹配首尾空格的正则表达式:

(^\s*)|(\s*$)

4.3详解Pattern类和Matcher类

Patternp=Ppile("\\w+");

p.pattern();//返回\w+

4.3.1Pattern.split(CharSequenceinput)

Patternp=Ppile("\\d+");

String[]str=p.split("我的QQ是:

456456我的电话是:

0532214我的邮箱是:

aaa@");

结果:

str[0]="我的QQ是:

"str[1]="我的电话是:

"str[2]="我的邮箱是:

aaa@"

4.3.2Pattern.matches

是一个静态方法,用于快速匹配字符串,该方法适合用于只匹配一次,且匹配全部字符串.

Java代码示例:

Pattern.matches("\\d+","2223");//返回true

Pattern.matcher(CharSequenceinput)

pattern=Ppile("b*g");

Matchermatcher=pattern.matcher("bbg");

System.out.println(matcher.matches());

4.3.3Matcher.matches()/Matcher.lookingAt()/Matcher.find()

matches()对整个字

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1