变长参数是jdk1.5的新特性,可以减少方法的数量。
1】状态查询场景
queryByStatus方法可以查询一个状态也可以查询多个状态,一个状态使用=查询,多个状态使用in查询。
使用变长参数之前的方法定义和使用如下,一个状态和多个状态的使用方式不同,一个状态的使用方式简洁和明确,多个状态的使用方式繁琐。
如果将一个状态也按多个状态的方式处理,会使得一个状态也变得繁琐了。
public List<ReportLog> queryByStatus(Long jobId, ReportLogStatus status)
//使用方式 reportLogDao.queryByStatus(jobId, ReportLogStatus.FAILED)
public List<ReportLog> queryByStatus(Long jobId, ReportLogStatus[] statuss)
/*
使用方式
ReportLogStatus[] statuss=new ReportLogStatus[2];
statuss[0]=ReportLogStatus.QUEUED;
statuss[1]=ReportLogStatus.PROCESSING;
return reportLogDao.queryByStatus(jobId, statuss);
*/
使用变长参数后的情况
1)减少了方法数量
2)多个状态的使用方式也变得简洁和明确了
3)还保留了之前的数组使用方式
public List<ReportLog> queryByStatus(Long jobId, ReportLogStatus... statuss)
//单状态使用方式
reportLogDao.queryByStatus(jobId, ReportLogStatus.FAILED);
//多状态使用方式
reportLogDao.queryByStatus(jobId, ReportLogStatus.QUEUED, ReportLogStatus.PROCESSING);
//数组使用方式
ReportLogStatus[] statuss=。。。。
reportLogDao.queryByStatus(jobId, statuss);
2】log中的参数
待续。。。
相关推荐
主要介绍了Java中的可变参数常见用法,结合实例形式总结分析了java可变参数的常见功能、使用方法及相关操作注意事项,需要的朋友可以参考下
可变参数(...) 86 枚举:关键字 enum 86 自动拆装箱 86 泛型 87 <java.lang>System 89 <java.lang>Runtime 90 <java.lang>Math 90 <java.lang>.Date:日期类,月份从0—11 92 <java.lang> Calendar:日历类 93 ...
数组总结(概念、定义、默认值、可变长参数、值传递与引用传递等)。1.冒泡排序: 两两相比(两个相邻的数进行比较) 条件成立 互换位置 外层循环控制比较的轮数 **轮数永远是 长度 -1 (n - 1)** 内层循环...
final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的...
非静态实例初始化 5.8 数组初始化 5.8.1 可变参数列表 5.9 枚举类型 5.10 总结 第6章 访问权限控制 第7章 复用类 第8章 多态 第9章 接口 第10章 内部类 第11章 持有对象 第12章 通过异常处理错误 第13章 字符串 第...
7.6.1 超车方法:使用类实例做参数 172 7.6.2 调用这个方法 173 7.6.3 发生了什么 174 7.7 加餐:局部变量和实例变量 175 7.7.1 什么是局部变量(Local Variable) 175 7.7.2 什么是实例变量(Instance ...
7.6.1 超车方法:使用类实例做参数 172 7.6.2 调用这个方法 173 7.6.3 发生了什么 174 7.7 加餐:局部变量和实例变量 175 7.7.1 什么是局部变量(Local Variable) 175 7.7.2 什么是实例变量(Instance ...
3、移位操作符右边的参数要先进行模32运算(当左边的变元是long型,则模64),如1。浮点运算的中间结果程度是不一致的。有些处理器适用80bit浮点存储器,有些则使用64bit、80bit。直到最后才把结果截断为64bit,这样做...
可变的['vєәriәbl] volatile (关键字) 不稳定的['vɒlәtail] while (关键字) 循环语句。 当...的时候 [hwail] ORACLE_SID=oral10g\ --变局部变量 export ORACLE_SID --变全局变量 unset ORACLE_SID --卸载...
3) 总体设计思路(简要说明系统包含的java源程序及其功能,描述类之间的主要关系) 4) 具体设计(以表格形式描述各个类含有的成员变量和方法,并对关键代码加以说明,显示程序运行界面) 5) 总结(包括对...
向函数式编程转变,你就应该尽量去使用val、不可变对象、无副作用方法,而不是var、可变对象、有副作用方法。要明白的是,从指令式编程向函数式编程的转变会很困难,因此你要做好充分的准备,并不断的努力。 scala...
4.1.4. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators)(可选) 4.2. 实现继承(Inheritance) 4.3. 实现equals()和hashCode() 4.4. 动态模型(Dynamic models) 4.5. 元组片断映射(Tuplizers) 5. ...
·可变参数; 静态引入 元数据(注解); 引入 Instrumentation Java∨ ersion se6 支持脚本语言 引入JDBC40API; 引入 Java Compiler API; 可插拔注解; 增加对 Native PKi( Public Key Infrastructure)、 Java gss( ...
大学我玩够了你呢?30天轻松搞定 Java 目浴录大学我玩够了你呢?30天轻松搞定 JavaJava数据处理之 类与对象1、类2、对象3、属性4、方法5、包总结 ...//成员变量,而且不可变 public MyMath(){//空参数构造方法 }
5.8.1 可变参数列表 5.9 枚举类型 5.10 总结 第6章 访问权限控制 第7章 复用类 第8章 多态 第9章 接口 第10章 内部类 第11章 持有对象 第12章 通过异常处理错误 第13章 字符串 第14章 类型信息 第15章 泛型 第16章 ...
18.5 可变性和泛型接口 340 18.5.1 协变接口 341 18.5.2 逆变接口 343 第18章快速参考 345 第19章 枚举集合 347 19.1 枚举集合中的元素 347 19.1.1 手动实现枚举器 348 19.1.2 实现ienumerable接口 352 19.2...
使用内建的int函数可对数值取整,如: ${ (x/2)?int } ${ 1.1?int } ${ 1.999?int } ${ -1.1?int } ${ -1.999?int } 结果是:2 1 1 -1 -1 1.7 比较运算符 表达式中支持的比较运算符有如下几个: 1. =或者==:...
4.7 可变参数列表的匹配 101 4.8 正则表达式的匹配 103 4.9 再谈case语句的变量绑定 104 4.10 再谈类型匹配 104 4.11 封闭继承层级与全覆盖匹配 105 4.12 模式匹配的其他用法 107 4.13 总结关于...
java是去蜗牛还是源码时代 JVM-JVM调优总结 -Xms -Xmx -Xmn -Xss(转) 田间的蜗牛chris 关注 0.969 2018.05.30 15:29:02 字数 5,507 阅读 29,986 Xms 是指设定程序启动时占用内存大小。一般来讲,大点,程序会启动的...