本季主要知识点:
Eclipse开发工具开发JAVA程序
正则表达式的使用
Eclipse:原本的含义是:日蚀
JAVA是SUN公司开发的。Eclipse 最早是由 IBM 开发的,之后转送给了eclipse组织,现在是一个完全免费的开发工具,可以直接从www.eclipse.org下载到最新的版本。下载完之后直接解压缩即可运行。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_02
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_03
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_04
在eclipse中一个工作区中可以有多个JAVA的项目。
Eclipse本身支持以下几个功能:
  ·  JDT:JAVA的开发环境
  ·  Junit:测试环境
  ·  CVS客户端:
  ·  Eclipse插件开发
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_05
可以直接选择新建JAVA项目
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_06
新建一个类
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_07
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_08
JAVA的命名规则:
  · 类名称:每个单词的首字母大写
  · 方法名称:第一个单词的首字母小写,之后每个单词的首字母大写
  · 属性名称:第一个单词的首字母小写,之后每个单词的首字母大写
  · 常量名称:每个单词的字母大写
  · 包名称:所有单词的字母小写
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_09
调整字体大小
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_10
显示行号
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_11
测试打印HelloWorld
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_12  
在eclipse中只要一保存文件,就可以自动进行编译
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_13
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_14
再新建一个Person类进行简单测试哈~
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_15
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_16
类写好了之后需要写属性,属性写好之后需要写setter和getter方法,这时可以使用生成代码功能
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_17
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_18
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_19
下面生动生成构造方法
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_20
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_21
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_22
下面我们再写一个Math类
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_23
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_24  
Ctrl+Shift+F:可以格式化代码
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_25
下面的Demo01中调用此Math类
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_26
代码下有红线划出说明代码有问题,提示Unhandled exception type Exception,可以使用Ctrl + 1:纠正代码功能。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_27
我们选择try/catch
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_28
运行测试下
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_29
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_30
下面看下eclipse的调试功能哈
双击加断点
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_31
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_32
问是否要切换到debug界面,选择yes表示切换。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_33
选择单步过滤
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_34
单步跳过:只看结果,不看代码内部的操作
单步跳入:进入代码内部看运算结果。
如果直接选择单步路过,我们将直接看到结果2
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_35 
下面我们把Math类代码写稍微复杂点哈
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_36
继续Debug这个Demo01
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_37
选择单步跳入
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_38
现在进入到构造方法,继续单步跳入
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_39
这里进入Math方法内,观察其值的变化,i的值为10,j的值为5
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_40
x的初值为0
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_41
return x;时,x的值为2
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_42
我们可以使用debug功能跟踪第行代码、每个值的变化哈~
在eclipse中还包含了Junit测试工具,此工具是一个开源项目,也是一组jar包。我们需要手工将这些jar包添加进来。
现在我们来测试Math类中的div方法
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_43
Test Case:表示一个测试用例
Test Suite:表示多个测试用例一起进行测试。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_44
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_45
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_46
在eclipse中虽然已经集成了junit,但是要把包手工的加进来。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_47
此jar包位于eclipse\plugins中
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_48
手工添加哈~
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_49
添加扩展jar
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_50
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_51
添加完扩展jar包后程序没有红线了哈~说明这个包正确了哈~
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_52
下面我们进行测试哈,使用TestCase.assertEquals()来测试div()方法,这就表示测试了
TestCase.assertEquals(new Math().div(10, 5), 2);
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_53
这里有个异常我们需要进行异常捕获下
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_54
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_55
运行junit测试
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_56
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_57
在Junit中有两个著名的标志:
  ·  Green Bar:表示测试结果正确
  ·  Red Bar:表示测试结果不正确
我们验证下10/5=6看下效果
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_58
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_59
如果我们设定结果有个误差,夸张点,误差为4
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_60
此时10/2=6就通过测试哈~
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_61
正则表达式:
从JDK 1.4开始在JAVA集成,最早都使用Apache的一套组件。往往使用正则进行数据的验证。主要是针对字符串的。
在String类中有以下三个方法集成了正则的应用:
  ·  public boolean matches(String regex) ; --> 匹配的
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_62
  ·  public String replaceAll() ;
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_63
  ·  public String[] split() ; --> 拆分
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_64
要求一:
  要求验证一个字符串是否是由数字组成的。如果是则显示true,否则显示false 
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_65
我们使用正则表达式来搞定哈~
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_66
如何表示数字,如果不知道,我们可以查看str.matches()方法
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_67
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_68
测试一下
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_69
现在匹配的是一位字符串,如果想匹配多位,假设此字符串的长度为6~15位。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_70
验证成功哈~~~
要求二:
  验证一个字符串是否是由字母组成的(a~z、A~Z),长度也是6~15位
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_71
字符串里面再加此数字验证下
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_72
这就是正则表达式基本操作哈~
要求三:
  验证一个字符串是否不是以数字组成的。假设字符串长度依然是6~15位。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_73
如果第一位不能是数字
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_74
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_正则表达式_75
要求四:
  给一个字符串,要求按照数字拆分,即:所有的数字都是拆分点,只要是有数字就要拆分,所以此处可以跟上一个长度的通配符:“+”
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_零基础学JAVA_76
通配符有以下几个:
  · *:表示长度为0位、1位或多位 
  · +:表示长度为1位或多位 
  · ?:表示长度为1位或0位
实际上对于很多的程序来讲,有些时候是不太习惯直接去写[0-9a-zA-Z]之类的代码,而是喜欢用一些其他的内容进行替代:
  ·  \d:表示数字
  ·  \D:表示非数字
  ·  \w:表示由字母、数字、下划线组成
  ·  \W:表示由非字母、数字、下划线组成
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_77

要求五:
  要求判断一个字符串是否是由字母、数字、下划线组成
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_Eclipse_78
要求六:
Replace方法也支持正则,例如:将一个字符串中的数字全部替换成“X” 。
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_JAVA_79
正则表达式在程序开发中常用于拆分字符串及匹配,比如网站经常要对输入的email地址进行验证。
要求七:
对email地址进行验证
[零基础学JAVA]Java SE应用部分-22.Eclipse及正则表达式使用_匹配_80
总结
1、eclipse使用
2、正则表达式的应用(匹配、拆分)
########################################################