eclipse中常用的快捷键
Alt + / 提示
Ctrl + / 单行注释 / 取消
Ctrl + Shift + / 多行注释
Ctrl + Shift + \ 取消多行注释
Ctrl + 1 快速修复
Ctrl + Shift + o 导包
Alt+上下键 代码位置调换
1.Ctrl + D 删除当前行
重置透视图:window->reset perspective
当eclipse 的Java视图变的很乱的时候,就可以重置透视图,还原为最初的界面.
大小写转换
更改为大写 Ctrl+Shift+X
更改为小写 Ctrl+Shift+Y
复制行
Ctrl+Alt+向下键
查看源代码
1、Ctrl+单击 需要查看源码的类
2、Ctrl+Shift+T
断点调试
1.给你需要调试的代码打一个断点
2.需要使用debug 来调试
3.
step into 进代码的实现
step over 跳到下一行代码
step return 返回到原来的位置
断点调试的作用: 1.查找错误 2.梳理代码的逻辑。
静态导包 :
作用:可以省略类名来调用静态方法。
格式 : import static 包名+类名.方法名
注意: 静态导入的一定是类中的静态方法
增强for循环:
除了可以遍历数组,还可以用来遍历集合。
增强for循环使用的条件: 增强for循环只能用在数组、或实现Iterable接口的集合类上
枚举类型
使用场景: 调用方法的时候有些参数不是传递任意的值,而是传递的是某个范围的值。
枚举类型的定义格式:
通过关键字enum 来定义
枚举类型是一个比较特殊的类,不能直接new对象,每一个枚举值就表示一个实例对象
enum 枚举的名字 枚举值 命名: 只能以字母,下划线或美元符号开头 一般情况枚举值是大写 , 每一个枚举值之间以逗号隔开
枚举值的使用注意事项:
1.定义的每一个枚举值指的是一个实例对象
2.枚举值是可以定义属性和方法
3.它是不能直接new一个对象出来的,只能同过枚举值来表示对象
4.如果存在抽象方法就必须要实现抽象方法。
正则表达式:
含义:就是一个字符串的规则,规则是由一些特殊符号组成的。
boolean matches(String regex) :判断字符串是否符合指定的规则 regex : 指定的规则
预定义字符类
. 任何字符(与行结束符可能匹配也可能不匹配)
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
范围词:
[abc] a、b 或 c(简单类)
[^abc] 任何字符,除了 a、b 或 c(否定)
[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)
a 到 d 或 m 到 p:[a-dm-p](并集)
[a-z&&[def]] d、e 或 f(交集) [def]
[a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](减去)
[a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](减去)
数量词
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过m次
正则表达式的应用:
1.匹配功能
2.切割功能:split()
3.替换功能 replaceFirst(String regex, String replacement)
4.查找功能 :Pattern 这个类来实现查找功能
指定为字符串的正则表达式必须首先被编译为此类的实例。然后,可将得到的模式用于创建 Matcher 对象,依照正则表达式,该对象可以与任意字符序列匹配。执行匹配所涉及的所有状态都驻留在匹配器中,所以多个匹配器可以共享同一模式。
调用顺序是
Pattern p = Pattern.compile("a*b");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();
Matcher中有两个方法:
find(); 返回一个boolean类型的值 如果判断的值符合表达是返回true 不符合就返回false
group(); 返回符合要求的字符串
IO(Input Output)流
io流技术主要用于设备和设备之间的一个数据传输
File 文件类
用来操作文件和文件夹的类
File类中的构造方法:
File(String pathname)--- 同过你指定的路径来创建一个File对象。
File(File parent, String child)--- 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
File(String parent, String child)---根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
分割符: windows 的分割符 使用的 \ 但是Linux 分割符/
通过 : File.separatorChar 系统默认的分割符
路径问题:
1.绝对路径 : 确定好了的路径,不会随着文件的移动而更改的路径。
2.相对路径 : 相对路径是相对于工程所在路径
. 表示当前路径
.. 上一级路径
File中的常用方法:
1.创建文件或文件夹
createNewFile() 在指定位置创建一个空文件,成功就返回true,如果已存在就不创建然后返回false
mkdir() 在指定位置创建目录,这只会创建最后一级目录,如果上级目录不存在就抛异常。
mkdirs() 在指定位置创建目录,这会创建路径中所有不存在的目录。
2.删除
delete() 删除文件或一个空文件夹,如果是文件夹且不为空,则不能删除,成功返回true,失败返回false。
deleteOnExit() 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录,保证程序异常时创建的临时文件也可以被删除
3.修改
renameTo(File dest) 重命名文件或文件夹,也可以操作非空的文件夹,文件不同时相当于文件的剪切,剪切时候不能操作非空的文件夹。移动/重命名成功则返回true,失败则返回false。
4.判断:
exists() 文件或文件夹是否存在。
isFile() 是否是一个文件,如果不存在,则始终为false。
isDirectory() 是否是一个目录,如果不存在,则始终为false。
isHidden() 是否是一个隐藏的文件或是否是隐藏的目录。
isAbsolute() 测试此抽象路径名是否为绝对路径名。
5. 获取方法:
getName() 获取文件或文件夹的名称,不包含上级路径。
getPath() 返回绝对路径,可以是相对路径,但是目录要指定
getAbsolutePath() 获取文件的绝对路径,与文件是否存在没关系
length() 获取文件的大小(字节数),如果文件不存在则返回0L,如果是文件夹也返回0L。
getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回null。
lastModified() 获取最后一次被修改的时间。
staic File[] listRoots() 列出所有的根目录(Window中就是所有系统的盘符)
list() 返回目录下的文件或者目录名,包含隐藏文件。对于文件这样操作会返回null。
list(FilenameFilter filter) 返回指定当前目录中符合过滤条件的子文件或子目录。对于文件这样操作会返回null。
listFiles() 返回目录下的文件或者目录对象(File类实例),包含隐藏文件。对于文件这样操作会返回null。
listFiles(FilenameFilter filter) 返回指定当前目录中符合过滤条件的子文件或子目录。对于文件这样操作会返回null