object…object和object[]…object的区别

object…object

public int update(String sql, Object... params) throws SQLException {
        Connection conn = this.prepareConnection();
        return this.update(conn, true, sql, params);
    }

上面程序中传递的形参中有这样的一个写法:Object… params

Object …params这种参数定义是在不确定方法参数的情况下的一种多态表现形式。

即这个方法可以传递多个参数,这个参数的个数是不确定的。

这是JDK1.5新增语法,新特性,动态参数或者是可变参数的意思。

(1)使用…将参数声明成可变长参数。

(2)可变长参数必须是最后一个参数。

(3)可变参数同时可以跟固定的参数混合使用,但是一个方法的参数列表中最多只有一个不定长度的参数。

上面第2、3条必须满足,不然不能通过编译。

Object是所有类的基类,所以使用Object …objects这样的参数形式,允许一切继承自Object的对象作为参数。

Object[] obj

这是一个Object数组构成的参数形式。说明这个方法的参数是一个Object数组,至于这个数组中存储的元素,可以是继承自Object的所有类的对象。

当形参为Object[]数组时,调用该方法必须为一个数组

object…object和object[]…object的区别

日常使用不定参数时候基本是Object…可以等同于 Object[] obj一维数组理解的。

当形参为Object…objects时,调用就相当灵活了,可以不带参数,可以带一个参数或者多个参数,也可以带数组作为参数

二、怎样使用

private static int sumUp(int... values) {   
    int sum = 0;   
    for (int i = 0; i < values.length; i++) {   
        sum += values[i];   
    }   
    return sum;   
} 
public static void main(String[] args) {
  String ss=test("网页制作","设计欣赏","建站教程","网站优化");
  System.out.println(ss);
 }
 public static String test(String... params ) {
  StringBuilder s = new StringBuilder();
  for (String string : params) {
   s.append(string);
  }
  return s.toString();
 }

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4267.html

(0)
江山如画的头像江山如画管理团队
从月薪3500到身价700万 我在上海的奋斗岁月
上一篇 2019年11月16日 下午2:04
大学英语课如何融入课程思政
下一篇 2019年11月20日 上午8:35

99%的人还看了以下文章

  • JS截取字符串方法详解:前面/中间/后面

    JS截取字符串方法,JS的match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 js截取字符串中间的内容 var str = “aaabbbcccdddeeefff”; str = str.match(/aaa(\S*)fff/)[1]; alert(str);//结果bbbcccdddeee js截取某个字符串前面的内容 var…

    2023年1月5日
    10.5K0
  • python 初学者练手上机实操四

    1.用*打印一个如下所示的图形。(10分) * * * * * * * * * * print(‘*’) print(‘* *’) print(‘* * *’) print(‘* * * *’) 要求分别使用for和while语句实现 导入turtle包(impo…

    2023年5月5日
    8.7K0
  • 精!HTML5调用手机拍照实现图片上传服务器,并将图片地址存进数据库(下)

    这篇文章主要为大家详细介绍如何使用HTML5利用摄像头拍照实现上传功能。 上一篇只讲到前台操作,这篇专门涉及到Java后台处理,前台通过Ajax提交将Base64编码过的图片数据信息传到Java后台,然后Java这边进行接收处理,通过对图片数据信息进行Base64解码,之后使用流将图片数据信息上传至服务器进行保存,并且将图片的路径地址存进数据库。 大家可以点…

    2022年8月11日
    10.1K0
  • servlet共享变量实现计数器功能(servlet入门)

    servlet类中定义的成员变量,被所有的客户线程共享。 要求利用servlet共享变量实现计数器功能。 Count.java package com.servlet; import java.io.I.*; import javax.servlet.*; import javax.servlet.http.*; public class Count ext…

    2018年11月27日
    11.5K0
  • 一文让你快速理解欠拟合和过拟合,以及解决欠拟合和过拟合的方法?(精)

    前面分享过《深度学习中的激活函数、防止过拟合的方法》、《最清楚的过拟合(Overfitting)、欠拟合讲解》,今天给125建站网再给大家梳理一下,让你快速理解欠拟合和过拟合,以及解决欠拟合和过拟合的方法? 欠拟合与过拟合 欠拟合是指模型在训练集、验证集和测试集上均表现不佳的情况; 过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛…

    2023年1月16日
    5.1K0
  • 500 Internal Server Error 错误原因及解决方法(图)

    500 属于服务器内部错误。如果其他网站可以打开,就这一网站打不开,那是该网站的服务器出了问题,跟你的电脑无关,如果其他网页都打不开,你就试着用工具修复一下浏览器。 500内部服务器错误的一般原因是IIS服务器无法解析ASP代码。 如:ASP语法出错、ACCESS数据库连接语句出错,文件引用与包含路径出错、使用了服务器不支持的组件如FSO等。 如果在Wind…

    2018年7月2日
    38.8K0

发表回复

登录后才能评论