博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
黑马Java学习笔记之-----静态导入、可变参数和高级For循环
阅读量:5216 次
发布时间:2019-06-14

本文共 1745 字,大约阅读时间需要 5 分钟。

---------------------- 、期待与您交流! ----------------------

 

静态导入(JDK1.5):

  静态导入允许您在调用其它类中定义的静态成员时,可以忽略类名。 

  当你想使用static成员时,可以使用静态导入(在API中的类和你自己的类上,都可以使用该特性)。

  例子:

    静态导入之前的代码:

1 public class TestStatic {   2      public static void main(String[] args) {   3           System.out.println(Integer.toHexString(42));   4      }   5 }

    静态导入后的代码:

1 import static java.lang.System.out;   //导入System中的out静态方法2 public class TestStaticImport {   3         public static void main(String[] args) {   4         out.println(“哈哈哈哈好方便!”);   5      }   6 }

注:

1、虽然该特性通常称为“静态导入”,但语法必须是import static,后面跟你想导入的static成员的完全限定名称,或者通配符。
2、提防含糊不清的命名static成员。例如,如果你对Integer类和Long类执行了静态导入,引用MAX_VALUE将导致一个编译器错误,因为Integer和Long都有一个MAX_VALUE常量,并且Java不会知道你在引用哪个MAX_VALUE。 
3、你可以在static对象引用、常量(记住,它们是static 或final)和static方法上进行静态导入。 

  

可变参数(JDK1.5):

  可变参数列表的可变包括两层可变:1.参数个数可变;2.参数类型可变。

  格式:

    修饰符 返回值类型 方法名(类型 … 参数名){方法体}   //用省略号...声明“参数名”为可变长度的参数。

  如果声明如下方法:

  public  test(int a, String b, String... str)

  编译时将被解释为:

  public  test(int a, String b, String[] str)

  但是这样做还是有一些限制的。

  在一个方法中只能使用一个省略号定义,也就是只能定义一个可变长的参数。可变参数一定要放在参数列表的最后面。

  下面的定义是不合法的:

  public  test(int a, String b,String... str,  float ... f)
 

高级for循环(JDK1.5):

  (1)新特性,代替迭代器使用时的不爽,简化书写,底层原理是迭代器凡是支持迭代器的都支持高级for循环

     高级for循环,只用于集合和数组的遍历,集合只能用Collection不能用Map集合

     只能把Map集合转化成Set集合,才能用for循环。

  (2)格式

  for(数据类型 变量名:被遍历的集合(Collection)或者数组)

  {

    }

       (3)局限性:

    必须要有遍历的目标

    对集合或者数组进行遍历时,只能获取集合元素,不能对集合元素进行操作

    迭代器除了遍历,还可以进行remove操作集合中的元素

    列表迭代器还可以在遍历过程中进行增删改查的操作

  (4)传统for循环和高级for循环的区别

    高级for循环有一个局限性,就是必须要有遍历的目标(集合或者数组)

    遍历数组时建议使用传统for循环,因为可以定义角标,比如打印100helloworld时用传统for循环方便

 


---------------------- 、期待与您交流! ---------------------- 

转载于:https://www.cnblogs.com/MercyK/archive/2013/04/29/3020600.html

你可能感兴趣的文章
JavaScript(三) 数据类型
查看>>
移动端rem布局屏幕适配插件(放js中便可使用)
查看>>
Docker
查看>>
bzoj2259 [Oibh]新型计算机
查看>>
对位与字节的深度认识
查看>>
C++编程基础二 16-习题4
查看>>
MongoDB遇到的疑似数据丢失的问题。不要用InsertMany!
查看>>
服务器被疑似挖矿程序植入107.174.47.156,发现以及解决过程(建议所有使用sonatype/nexus3镜像的用户清查一下)...
查看>>
JQuery 学习
查看>>
session token两种登陆方式
查看>>
C# ArrayList
查看>>
IntelliJ IDEA 12集成Tomcat 运行Web项目
查看>>
java,多线程实现
查看>>
个人作业4-alpha阶段个人总结
查看>>
android smack MultiUserChat.getHostedRooms( NullPointerException)
查看>>
递归-下楼梯
查看>>
实用的VMware虚拟机使用技巧十一例
查看>>
监控工具之---Prometheus 安装详解(三)
查看>>
Azure Iaas基础之---创建虚拟机
查看>>
不错的MVC文章
查看>>