更新java5新特性::

Java1.5增加了新特性:

可变参数:
适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。
注意:可变参数必须位于最后一项。当可变参数个数多余一个时,
必将有一个不是最后一项,所以只支持有一个可变参数。
因为参数个数不定,所以当其后边还有相同类型参数时,
java无法区分传入的参数属于前一个可变参数还是后边的参数,
所以只能让可变参数位于最后一项。

fore:用来迭代数组的,如果在不操作索引的情况下,
就可以使用fore迭代数组.减少代码的书写但是在进行代码反编译的时候,

查看底层是怎么进行运算的.

package com.csdn.jdbcdemo.date2017_11_15;/*** java5的新特性:可变参数和fore* 现在最新是java9* 更新算一个旧的知识点吧* 主要是对一些java版本的特性了解* @author 89155**/
public class ChangArgsDemo {public static void main(String[] args) {NumberDemo(3.4,2,4,3,6,5,7,8,8);NumberDemo2(new int[]{1,23,4,5,6,5});}/** 可变参数是对不确定参数而设计的..* 可变参数作为参数传递,只能放在最后面,不可以到处放* * * fore是java5的新特性.用来遍历数组的,如果不需要操作索引,* (有的人称之为下标)就是用fore迭代数组,* 这样更加方便.减少的代码的数量*/private static void NumberDemo(double d ,int...arr){//对商品进行计算int j = 0;for (int i : arr) {j+=i;}System.out.println("使用fore计算和可变参数商品的价格为"+(j*d));}/** 用来和上面对比的*/private static void NumberDemo2(int[] arr){int j = 0;for (int i = 0 ; i<arr.length ; i++){j+=arr[i];}System.out.println("使用for循环计算商品="+(j));}
}

下面是反编译代码:


package com.csdn.jdbcdemo.date2017_11_15;import java.io.PrintStream;public class ChangArgsDemo
{public ChangArgsDemo(){}public static void main(String args[]){NumberDemo(3.3999999999999999D, new int[] {2, 4, 3, 6, 5, 7, 8, 8});NumberDemo2(new int[] {1, 23, 4, 5, 6, 5});}private static transient void NumberDemo(double d, int arr[]){int j = 0;int ai[];int l = (ai = arr).length;for (int k = 0; k < l; k++){int i = ai[k];j += i;}System.out.println((new StringBuilder("使用fore计算和可变参数商品的价格为")).append((double)j * d).toString());}private static void NumberDemo2(int arr[]){int j = 0;for (int i = 0; i < arr.length; i++)j += arr[i];System.out.println((new StringBuilder("使用for循环计算商品=")).append(j).toString());}
}

由此可以看见.
所谓的可变参数和fore其实只是语法糖而已,
减少代码的书写,让开发更加高效
使用反编译,看到底层还是使用for循环和数组来实现;

java5的新特性fore和可变参数相关推荐

  1. c++11新特性的使用---可变模板参数、type_traits、function综合使用

    DLL帮助类 c++中手动调用dll是比较繁琐的,调用过程是:加载dll后还要定义一个对应的函数指针类型,接着调用GetProAddress获取函数地址,在转成函数指针,最后调用该函数如下例子: #i ...

  2. Java5~11新特性

    Java5~11版本新特性 Java5 Java6 Java7 Java8 Java9 Java10 Java11 Java5 Java5开发代号为Tiger(老虎),于2004-09-30发行 特性 ...

  3. Oracle 21c 新特性:不可变表 Immutable tables 提高安全

    Oracle 21c 的区块链表,是最受关注的特性,但是还有一个小特性,很少有人提及,那就是 Immutable tables - 不可变表. 区块链表是在 21c 中引入的,然后向后移植到 19.1 ...

  4. ES6新特性(函数默认参数,箭头函数)

    ES6新特性之 函数参数的默认值写法 和 箭头函数. 1.函数参数的默认值 ES5中不能直接为函数的参数指定默认值,只能通过以下的变通方式:   从上面的代码可以看出存在一个问题,当传入的参数为0或者 ...

  5. c++11新特性的使用---可变模板参数、lambda、type_traits、optional综合使用

    通过惰性求值类的实现综合采用了可变模板参数.lambda.type_traits.optional进行实现 该类功能是:当初始化某个对象时,该对象引用了一个大对象,这个对象的创建需要较长的时间,同时有 ...

  6. Jdk1.8新特性(二)——lambda表达式(参数列表)-{}和函数式接口@FunctionalInterface

    Jdk1.8新增lambda表达式是为了简化代码,主要用于简化匿名实现类,为其提供一种更加简洁的写法.Lambda表达式在swift语言中被称为代码块,lambda表达式可以认为是一种特殊的接口,是匿 ...

  7. C# 4.0 新特性dynamic、可选参数、命名参数等

    1.dynamic ExpandoObject 熟悉js的朋友都知道js可以这么写 : 1 var t = new Object(); 2 t.Abc = 'something'; 3 t.Value ...

  8. C++11新特性之变长参数模板详解

    本文主要介绍了C++11变长参数模板,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 目录 C++11 变长参数模板 变长函数参数 ...

  9. ES6新特性之函数优化-参数默认值

    函数优化 在ES6中,对函数的操作做了优化,使得我们在操作函数时更加的便捷. 函数参数默认值 在ES6以前,我们无法给一个函数参数设置默认值,只能采用变通写法: function add(a , b) ...

最新文章

  1. GAN完整理论推导与实现,Perfect!
  2. NVIDIA Display Container LS 服务意外地终止
  3. python语言跨平台语言吗_python属于跨平台语言吗?
  4. 硬件安全系列 逻辑电路基础知识介绍(二)
  5. 亲身验证切实可行的python项目部署方案
  6. Head first java chapter 16 集合与泛型(数据结构)
  7. 利用SpringBoot+RabbitMQ,实现一个邮件推送服务
  8. Nodejs框架+uniapp前端微商个人相册多端小程序源码
  9. leetcode - 813. 最大平均值和的分组
  10. Python使用RSA+MD5实现数字签名
  11. python 程序块 挂掉的服务_写一个python的服务监控程序
  12. python int函数的实现_python实现int函数的案例分析
  13. LOJ6070 基因 分块+回文自动机
  14. 实训任务4:Hadoop综合操作
  15. Java8 jdk1.8新特性
  16. 机器学习导论——机器学习三要素
  17. 获取最近一年十二月份的月份
  18. 黑龙江省计算机一级考试科目,黑龙江省2021年3月全国计算机等级考试时间和科目调整...
  19. 实用食品英语 (餐桌上用的)
  20. oracle数据库频繁被锁,oracle数据库用户频繁被锁

热门文章

  1. php include file_PHP Include文件实例讲解
  2. AI挖掘优质淘宝买家秀 再也不用担心辣眼睛了
  3. 中国防卫科技学院计算机,2014高考专业介绍:科技防卫
  4. 在不同位置(客户端的终端设备,服务端,项目代码中)判断设备类型(PC、手机、微信等)
  5. 缺少编译器要求的成员“System.Runtime.CompilerServices.ExtensionAttribute..ctor” 解决方案
  6. QCharts随时间流逝
  7. MFC 子对话框多了任务栏图标?
  8. 喝豆浆对身体都有哪些好处?
  9. 小水管也要有尊严 网络限速优化实际案例
  10. 搜索效果和搜索动画效果