java第七周学习 jdk1.5新特性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java第七周学习 jdk1.5新特性相关的知识,希望对你有一定的参考价值。

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

 

以上是关于java第七周学习 jdk1.5新特性的主要内容,如果未能解决你的问题,请参考以下文章

jdk1.5新特性

线程基础:JDK1.5+——线程新特性(上)

张季跃 201771010139《面向对象程序设计(java)》第七周学习总结

JDK各个版本的新特性jdk1.5-jdk8

java13-5 JDK1.5以后的一个新特性和Integer的面试题

JAVA JDK1.5-1.9新特性