可以把List<String>传递给一个接受List<Object>参数的方法吗?

TriCore架构-基于TC397的启动流程 TC397芯片的启动流程分为三个关键阶段:固件启动(BootFirmware)、Bootloader引导和应用程序启动。BootFirmware作为硬件信任根,包含SSW基础初始化、CHSW自检和BSL应急刷写通道。Bootloader承担安全验证和程序引导功能,支持双分区(AB-SWAP)和双引导方案(PBL/SBL)。安全启动通过校验机制确保软件完整性,提供三种可选技术方案。应用程序启动阶段实现软件双分区管理,支持SOTA更新。整个流程体现了汽车电子系统的安全设计理念,通过硬件级保护与软件验证相结合确保 阅读详情


打印  上一主题  下一主题

可以把List<String>传递给一个接受List<Object>参数的方法吗? 

[复制链接]

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

跳转到指定楼层
楼主
  发表于 2014-8-11 12:52:21  |  只看该作者  回帖奖励
本帖最后由 jiangweibin2573 于 2014-8-11 13:30 编辑

如果一个方法定义接受的参数是List<Object>;我可以把List<String>传给该方法吗?为什么!
就想下面这样
  1. import java.util.*;

  2. public class Test {

  3.         public static void main(String[] args) {
  4.                 List<String> str = new ArrayList<>();
  5.                 printList(str);
  6.         }

  7.         public static void printList(List<Object> str) {
  8.                 Iterator it = str.iterator();
  9.                 while(it.hasNext()){
  10.                         System.out.println(it.next());
  11.                 }
  12.         }
  13. }
复制代码

 

该用户从未签到

20

黑马币

25

技术分

14

主题

中级黑马

Rank: 3Rank: 3

沙发
  发表于 2014-8-11 13:00:31  |  只看该作者
可以啊,所有类都继承Object。传递后相当于多态了。
 
 

该用户从未签到

171

黑马币

91

技术分

17

主题

金牌黑马

Rank: 5Rank: 5

黑马骑士勋章

藤椅
  发表于 2014-8-11 13:03:11  |  只看该作者
不行吧,你让一个能管大学生中学生小学生的老师(List<Object>)去管一个能管中学生的老师(List<String>),合适吗?
 
 

该用户从未签到

112

黑马币

49

技术分

14

主题

中级黑马

Rank: 3Rank: 3

板凳
  发表于 2014-8-11 13:04:22  |  只看该作者
不行不行..
 
 

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

报纸
  楼主 |  发表于 2014-8-11 13:11:20  |  只看该作者
fantacyleo 发表于 2014-8-11 13:03
不行吧,你让一个能管大学生中学生小学生的老师(List)去管一个能管中学生的老师(List),合适吗? ...

但是,我这个问题,按你的比方来说,我这么描述:将一个中学老师交给一个可以管大、中、小学老师的机构,不可以吗
 
 

该用户从未签到

171

黑马币

91

技术分

17

主题

金牌黑马

Rank: 5Rank: 5

黑马骑士勋章

地板
  发表于 2014-8-11 13:16:45  |  只看该作者
jiangweibin2573 发表于 2014-8-11 13:11
但是,我这个问题,按你的比方来说,我这么描述:将一个中学老师交给一个可以管大、中、小学老师的机构, ...

当然不可以。如果你认为List<String>是中学老师,那么List就是老师,你又怎么能把List<Object>的List解读为机构呢?
财经专业出身的编程爱好者~绝不发水帖,偶尔回复水帖~
 

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

7#
  楼主 |  发表于 2014-8-11 13:26:53  |  只看该作者
fantacyleo 发表于 2014-8-11 13:16
当然不可以。如果你认为List是中学老师,那么List就是老师,你又怎么能把List的List解读为机构呢? ...

String是一个对象,Object可以接受任意类型对象。
这个问题中,我是把List<String>当参数去传给一个方法,不知道具体为啥不行。
List<String>是实际参数,List<Object>是形式参数,形参可以接受的范围不是已经包括了实参范围吗?
 
 

该用户从未签到

38

黑马币

26

技术分

15

主题

中级黑马

Rank: 3Rank: 3

8#
  发表于 2014-8-11 13:39:07  来自手机  |  只看该作者
泛型中写什么就是什么吧,不考虑继承
 
 

该用户从未签到

101

黑马币

37

技术分

3

主题

中级黑马

Rank: 3Rank: 3

9#
  发表于 2014-8-11 13:44:35  |  只看该作者
完整的写法是 List<? extends Object> list
在这里 extends Object 是必然的,可以写作 List<?> list
不要用 str 命名不是字符串的东西…
 
 

该用户从未签到

171

黑马币

91

技术分

17

主题

金牌黑马

Rank: 5Rank: 5

黑马骑士勋章

10#
  发表于 2014-8-11 13:58:16  |  只看该作者
jiangweibin2573 发表于 2014-8-11 13:26
String是一个对象,Object可以接受任意类型对象。
这个问题中,我是把List当参数去传给一个方法,不知道 ...

。。。又回到我之前打的比方上了。这样吧,再说一个编译通不过的例子:
List<Fruit> fruits =  new ArrayList<Apple>();

左边是一个装水果的容器,右边是一个装苹果的容器。你可以用装水果的容器装苹果,但用装水果的容器去装一个装苹果的容器就不合适了吧?
财经专业出身的编程爱好者~绝不发水帖,偶尔回复水帖~
 

该用户从未签到

43

黑马币

25

技术分

22

主题

中级黑马

Rank: 3Rank: 3

11#
  发表于 2014-8-11 14:31:32  |  只看该作者
没试过,不过根据多态应该可以,楼主可以试试
 
 

该用户从未签到

79

黑马币

27

技术分

10

主题

中级黑马

Rank: 3Rank: 3

QQ
12#
  发表于 2014-8-11 20:58:37  |  只看该作者
是不可以的.list是泛型,也就是传入的这个类,是告诉人家有这么一个类型 。是不会考虑继承关系的
 
 

该用户从未签到

70

黑马币

33

技术分

54

主题

中级黑马

Rank: 3Rank: 3

13#
  发表于 2014-8-11 22:39:35  |  只看该作者
很简单,String是一个对象的基本类型,而Object是所有类的父类,这是两个不相关的概念.
 
 

该用户从未签到

226

黑马币

58

技术分

16

主题

高级黑马

Rank: 4

黑马骑士勋章

14#
  发表于 2014-8-12 08:43:37  |  只看该作者
无耻的借用一下张老师的PPT:使用泛型的注意事项:

          参数化类型可以引用一个原始类型的对象,编译报告警告,例如,
          Collection<String> c = new Vector();//可不可以,不就是编译器一句话的事吗?

          原始类型可以引用一个参数化类型的对象,编译报告警告,例如,
          Collection c = new Vector<String>();//原来的方法接受一个集合参数,新的类型也要能传进去

          参数化类型不考虑类型参数的继承关系:

          Vector<String> v = new Vector<Object>(); //错误!///不写<Object>没错,写了就是明知故犯

          Vector<Object> v = new Vector<String>(); //也错误!

          编译器不允许创建泛型变量的数组。即在创建数组实例时,数组的元素不能使用参数化的类型,例如,下面语句有错误:

            Vector<Integer> vectorList[] = new Vector<Integer>[10];

          泛型中的类型参数严格说明集合中装载的数据类型是什么和可以加入什么类型的数据,注意:Collection<String>和Collection<Object>是两个没有转换关系的参数化的类型。

          假设Vector<String> v = new Vector<Object>();可以的话,那么以后从v中取出的对象当作String用,而v实际指向的对象中可以加入任意的类型对象;假设Vector<Object> v = new Vector<String>();可以的话,那么以后可以向v中加入任意的类型对象,而v实际指向的集合中只能装String类型的对象。肯定会报错了



 
 

该用户从未签到

26

黑马币

25

技术分

2

主题

中级黑马

Rank: 3Rank: 3

QQ
15#
  发表于 2014-8-12 09:00:30  |  只看该作者
是不行的,高新里面有说到泛型,这么做是明知故犯,编译不通过的
 
 

该用户从未签到

22

黑马币

30

技术分

7

主题

中级黑马

Rank: 3Rank: 3

16#
  发表于 2014-8-12 09:40:52  |  只看该作者
不可以,因为形参List<Object>声明的是什么类型都可以装,而List<String>只能装String类型的。泛型中不存在继承关系。当你把List<String>作为实参传入形参为List<Object>的时候,就相当于是:List<Object> str = new List<String>(),这两个集合类型想让是不一样的。
 
 

该用户从未签到

170

黑马币

28

技术分

11

主题

中级黑马

Rank: 3Rank: 3

QQ
17#
  发表于 2014-8-12 10:12:42  |  只看该作者
貌似有点那么一点感觉,我看到这个就想起了转型,你传入一个很大范围的类型对象到接收一个很小范围的类型变量的方法中去肯定也要进行强转的啊,个人觉得不行。。。
很懒没留
 

该用户从未签到

20

黑马币

25

技术分

22

主题

中级黑马

Rank: 3Rank: 3

18#
  发表于 2014-8-12 16:14:02  |  只看该作者
等式两边可以在任意一边使用泛型,在另一边不使用(考虑向后兼容);
ArrayList<String> al = new ArrayList<Object>();  //错
//要保证左右两边的泛型具体类型一致就可以了,这样不容易出错。
ArrayList<? extends Object> al = new ArrayList<String>();
上面这种是可以的,但是不能进行添加,因为仍然不清楚引用的类型到底是什么
al.add("aa");  //错
就相当于你只知道老虎在动物园里,但是却不知道把老虎添加到哪个笼子里一样。
 
 

该用户从未签到

62

黑马币

13

技术分

2

主题

中级黑马

Rank: 3Rank: 3

19#
  发表于 2014-8-12 16:28:58  |  只看该作者
学习来的.......
 
 

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

20#
  楼主 |  发表于 2014-8-12 16:41:16  |  只看该作者
a6511631 发表于 2014-8-12 08:43
无耻的借用一下张老师的PPT:使用泛型的注意事项:
          参数化类型可以引用一个原始类型的对象,编译 ...

他只是这么说的,没怎么透彻
打印  上一主题  下一主题

可以把List<String>传递给一个接受List<Object>参数的方法吗? 

[复制链接]

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

跳转到指定楼层
楼主
  发表于 2014-8-11 12:52:21  |  只看该作者  回帖奖励
本帖最后由 jiangweibin2573 于 2014-8-11 13:30 编辑

如果一个方法定义接受的参数是List<Object>;我可以把List<String>传给该方法吗?为什么!
就想下面这样
  1. import java.util.*;

  2. public class Test {

  3.         public static void main(String[] args) {
  4.                 List<String> str = new ArrayList<>();
  5.                 printList(str);
  6.         }

  7.         public static void printList(List<Object> str) {
  8.                 Iterator it = str.iterator();
  9.                 while(it.hasNext()){
  10.                         System.out.println(it.next());
  11.                 }
  12.         }
  13. }
复制代码

 

该用户从未签到

20

黑马币

25

技术分

14

主题

中级黑马

Rank: 3Rank: 3

沙发
  发表于 2014-8-11 13:00:31  |  只看该作者
可以啊,所有类都继承Object。传递后相当于多态了。
 
 

该用户从未签到

171

黑马币

91

技术分

17

主题

金牌黑马

Rank: 5Rank: 5

黑马骑士勋章

藤椅
  发表于 2014-8-11 13:03:11  |  只看该作者
不行吧,你让一个能管大学生中学生小学生的老师(List<Object>)去管一个能管中学生的老师(List<String>),合适吗?
 
 

该用户从未签到

112

黑马币

49

技术分

14

主题

中级黑马

Rank: 3Rank: 3

板凳
  发表于 2014-8-11 13:04:22  |  只看该作者
不行不行..
 
 

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

报纸
  楼主 |  发表于 2014-8-11 13:11:20  |  只看该作者
fantacyleo 发表于 2014-8-11 13:03
不行吧,你让一个能管大学生中学生小学生的老师(List)去管一个能管中学生的老师(List),合适吗? ...

但是,我这个问题,按你的比方来说,我这么描述:将一个中学老师交给一个可以管大、中、小学老师的机构,不可以吗
 
 

该用户从未签到

171

黑马币

91

技术分

17

主题

金牌黑马

Rank: 5Rank: 5

黑马骑士勋章

地板
  发表于 2014-8-11 13:16:45  |  只看该作者
jiangweibin2573 发表于 2014-8-11 13:11
但是,我这个问题,按你的比方来说,我这么描述:将一个中学老师交给一个可以管大、中、小学老师的机构, ...

当然不可以。如果你认为List<String>是中学老师,那么List就是老师,你又怎么能把List<Object>的List解读为机构呢?
财经专业出身的编程爱好者~绝不发水帖,偶尔回复水帖~
 

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

7#
  楼主 |  发表于 2014-8-11 13:26:53  |  只看该作者
fantacyleo 发表于 2014-8-11 13:16
当然不可以。如果你认为List是中学老师,那么List就是老师,你又怎么能把List的List解读为机构呢? ...

String是一个对象,Object可以接受任意类型对象。
这个问题中,我是把List<String>当参数去传给一个方法,不知道具体为啥不行。
List<String>是实际参数,List<Object>是形式参数,形参可以接受的范围不是已经包括了实参范围吗?
 
 

该用户从未签到

38

黑马币

26

技术分

15

主题

中级黑马

Rank: 3Rank: 3

8#
  发表于 2014-8-11 13:39:07  来自手机  |  只看该作者
泛型中写什么就是什么吧,不考虑继承
 
 

该用户从未签到

101

黑马币

37

技术分

3

主题

中级黑马

Rank: 3Rank: 3

9#
  发表于 2014-8-11 13:44:35  |  只看该作者
完整的写法是 List<? extends Object> list
在这里 extends Object 是必然的,可以写作 List<?> list
不要用 str 命名不是字符串的东西…
 
 

该用户从未签到

171

黑马币

91

技术分

17

主题

金牌黑马

Rank: 5Rank: 5

黑马骑士勋章

10#
  发表于 2014-8-11 13:58:16  |  只看该作者
jiangweibin2573 发表于 2014-8-11 13:26
String是一个对象,Object可以接受任意类型对象。
这个问题中,我是把List当参数去传给一个方法,不知道 ...

。。。又回到我之前打的比方上了。这样吧,再说一个编译通不过的例子:
List<Fruit> fruits =  new ArrayList<Apple>();

左边是一个装水果的容器,右边是一个装苹果的容器。你可以用装水果的容器装苹果,但用装水果的容器去装一个装苹果的容器就不合适了吧?
财经专业出身的编程爱好者~绝不发水帖,偶尔回复水帖~
 

该用户从未签到

43

黑马币

25

技术分

22

主题

中级黑马

Rank: 3Rank: 3

11#
  发表于 2014-8-11 14:31:32  |  只看该作者
没试过,不过根据多态应该可以,楼主可以试试
 
 

该用户从未签到

79

黑马币

27

技术分

10

主题

中级黑马

Rank: 3Rank: 3

QQ
12#
  发表于 2014-8-11 20:58:37  |  只看该作者
是不可以的.list是泛型,也就是传入的这个类,是告诉人家有这么一个类型 。是不会考虑继承关系的
 
 

该用户从未签到

70

黑马币

33

技术分

54

主题

中级黑马

Rank: 3Rank: 3

13#
  发表于 2014-8-11 22:39:35  |  只看该作者
很简单,String是一个对象的基本类型,而Object是所有类的父类,这是两个不相关的概念.
 
 

该用户从未签到

226

黑马币

58

技术分

16

主题

高级黑马

Rank: 4

黑马骑士勋章

14#
  发表于 2014-8-12 08:43:37  |  只看该作者
无耻的借用一下张老师的PPT:使用泛型的注意事项:

          参数化类型可以引用一个原始类型的对象,编译报告警告,例如,
          Collection<String> c = new Vector();//可不可以,不就是编译器一句话的事吗?

          原始类型可以引用一个参数化类型的对象,编译报告警告,例如,
          Collection c = new Vector<String>();//原来的方法接受一个集合参数,新的类型也要能传进去

          参数化类型不考虑类型参数的继承关系:

          Vector<String> v = new Vector<Object>(); //错误!///不写<Object>没错,写了就是明知故犯

          Vector<Object> v = new Vector<String>(); //也错误!

          编译器不允许创建泛型变量的数组。即在创建数组实例时,数组的元素不能使用参数化的类型,例如,下面语句有错误:

            Vector<Integer> vectorList[] = new Vector<Integer>[10];

          泛型中的类型参数严格说明集合中装载的数据类型是什么和可以加入什么类型的数据,注意:Collection<String>和Collection<Object>是两个没有转换关系的参数化的类型。

          假设Vector<String> v = new Vector<Object>();可以的话,那么以后从v中取出的对象当作String用,而v实际指向的对象中可以加入任意的类型对象;假设Vector<Object> v = new Vector<String>();可以的话,那么以后可以向v中加入任意的类型对象,而v实际指向的集合中只能装String类型的对象。肯定会报错了



 
 

该用户从未签到

26

黑马币

25

技术分

2

主题

中级黑马

Rank: 3Rank: 3

QQ
15#
  发表于 2014-8-12 09:00:30  |  只看该作者
是不行的,高新里面有说到泛型,这么做是明知故犯,编译不通过的
 
 

该用户从未签到

22

黑马币

30

技术分

7

主题

中级黑马

Rank: 3Rank: 3

16#
  发表于 2014-8-12 09:40:52  |  只看该作者
不可以,因为形参List<Object>声明的是什么类型都可以装,而List<String>只能装String类型的。泛型中不存在继承关系。当你把List<String>作为实参传入形参为List<Object>的时候,就相当于是:List<Object> str = new List<String>(),这两个集合类型想让是不一样的。
 
 

该用户从未签到

170

黑马币

28

技术分

11

主题

中级黑马

Rank: 3Rank: 3

QQ
17#
  发表于 2014-8-12 10:12:42  |  只看该作者
貌似有点那么一点感觉,我看到这个就想起了转型,你传入一个很大范围的类型对象到接收一个很小范围的类型变量的方法中去肯定也要进行强转的啊,个人觉得不行。。。
很懒没留
 

该用户从未签到

20

黑马币

25

技术分

22

主题

中级黑马

Rank: 3Rank: 3

18#
  发表于 2014-8-12 16:14:02  |  只看该作者
等式两边可以在任意一边使用泛型,在另一边不使用(考虑向后兼容);
ArrayList<String> al = new ArrayList<Object>();  //错
//要保证左右两边的泛型具体类型一致就可以了,这样不容易出错。
ArrayList<? extends Object> al = new ArrayList<String>();
上面这种是可以的,但是不能进行添加,因为仍然不清楚引用的类型到底是什么
al.add("aa");  //错
就相当于你只知道老虎在动物园里,但是却不知道把老虎添加到哪个笼子里一样。
 
 

该用户从未签到

62

黑马币

13

技术分

2

主题

中级黑马

Rank: 3Rank: 3

19#
  发表于 2014-8-12 16:28:58  |  只看该作者
学习来的.......
 
 

该用户从未签到

13

黑马币

25

技术分

11

主题

中级黑马

Rank: 3Rank: 3

20#
  楼主 |  发表于 2014-8-12 16:41:16  |  只看该作者
a6511631 发表于 2014-8-12 08:43
无耻的借用一下张老师的PPT:使用泛型的注意事项:
          参数化类型可以引用一个原始类型的对象,编译 ...

他只是这么说的,没怎么透彻
C# 动态壁纸实战:7步带你从零开始制作动态壁纸 动态壁纸是指在计算机桌面上播放视频、动画或交互式内容的一种技术。与传统的静态壁纸相比,动态壁纸更加生动有趣,可以大大提升桌面的观赏性和互动性。通过本文的详细讲解和代码示例,相信你已经学会了如何使用C#实现动态壁纸。动态壁纸不仅能够提升桌面的美观度,还能展示你的编程技能。希望这篇教程对你有所帮助,期待你在C#编程中取得更大的成就!🌟✨如果你有任何问题或建议,欢迎在评论区留言交流!希望这篇教程对你有所帮助,期待你在C#编程中取得更大的成就!😊✨😊✨。 阅读详情

相关推荐

利用Ghidra与SVD插件实现STM32固件深度逆向分析

本文详细介绍了如何利用Ghidra逆向工程框架结合SVD插件,实现对STM32固件(.bin文件)的深度逆向分析。通过加载描述芯片外设寄存器的SVD文件,Ghidra能将晦涩的硬件地址操作转换为可读的寄存器符号,极大提升了对嵌入式固件中通信协议、安全校验等关键逻辑的分析效率。文章涵盖了从Java环境搭建、工具配置到实战逆向解析的完整流程。

peach的博客 942

泛型使用注意事项

   参数化类型可以引用一个原始类型的对象,编译报告警告,例如,          Collection&lt;String&gt; c = new Vector();//可不可以,不就是编译器一句话的事吗?           原始类型可以引用一个参数化类型的对象,编译报告警告,例如,          Collection c = new Vector&lt;String&gt;();//...

dashabiooo的博客 269

开源CMDB与资产管理平台对比报告

本文对比分析了9款主流开源CMDB平台,从集成能力、功能完整性和多语言支持三个维度进行评测。重点介绍了VeCMDB、蓝鲸CMDB、WeCMDB和OpsAny等国产平台的特色:VeCMDB以动态模型和自动发现见长;蓝鲸CMDB适合超大规模企业级应用;WeCMDB专注金融级高并发场景;OpsAny提供一体化运维解决方案。针对不同规模企业给出选型建议:中小团队推荐Snipe-IT等轻量工具;大型企业建议蓝鲸或WeCMDB;需国产化适配的可选VeCMDB或OpsAny。文章还特别指出iTop、GLPI等适合ITIL

huang0612123的博客 1080

记List<Object>接受其他泛型入参报错及List、 List<Object>、 List<?>三者的区别

1.问题 这是我自定义的一个数据传输模型,使用List < Object>作为入参将结果返回到前台 @Data @AllArgsConstructor @NoArgsConstructor @Accessors(chain = true) @ApiModel(description = "自定义返回数据类型") public class SimpleResponseBody { @ApiModelProperty(name = "status",value = "状态码") pr

weixin_43869703的博客 5486

宇树G1嵌入式软件架构及技术实现

该架构通过硬件加速(FPGA)+确定性调度(RTX5)的组合,在1ms控制周期内完成从传感器采集到43轴输出的全链路处理,相比波士顿动力系统缩短40%的着地稳定时间。,结合ARM Cortex-R5与FPGA的异构计算能力,实现43自由度1kHz实时控制。

m0_60674045的博客 4311

用Pixel5玩转AOSP:从零开始定制Android13系统(含GMS集成方案)

本文提供了一份详尽的Pixel 5 AOSP定制指南,涵盖从环境搭建、源码下载、系统编译到刷机的完整流程。重点解决了原生AOSP缺失Google移动服务(GMS)的难题,分享了从官方镜像提取并集成GMS组件的实战方案,助你打造独一无二的Android 13系统。

sam99的博客 527

java面试

赢在面试之Java泛型篇(14) 2017-08-10 阿木侠 Java知音 Java知音 Java知音 微信号 Java_friends 功能介绍 推送Java开发中的一些必备技能,包括但不限于数据库、Java核心、流行框架、管理工具以及服务器相关,同时为您精选流行的开源项目,必会的面试选题,练手项目,优质视频资源等。让您闲暇之余巩固一下自己的知识,不知不觉中

qq_33334482的博客 1013

第10章 shellcode实战:18 神级开源shellcode工具:donut

Donut是一款shellcode生成器,可将C/C++、C#生成的PE文件转换为shellcode文件,同时支持JS、XSL、VBS脚本转换为shellcode。以下“原生”EXE/DLL指非托管PE文件(包括并不限于C/C++、delphie等编写生成的可执行文件),可以直接由系统加载运行,区别于.Net生成的托管文件。被处理exe/dll为32位程序,则需要用32为的shellcode加载器启用,exe/dll为64位的就用64位shellcode加载器启用。

李小咖·网安技术库 2796

为什么List<String>或者其他List<xxxx>不能赋值给List<Object>?为什么List<String>赋值给List<Object>会报错?为什么他们是并列的关系,而不是子父类?

举个例子: List<String> list1 = new ArrayList<>(); List<Object> list2 = new ArrayList<>(); list1 = list2; 这个代码会报错。 原因是:list1和list2并不是子父类关系。 具体原因:list2其实是将自己的地址值给了list1。如果接下来list1.add(123),这对于list1是成立的;但是list2也同样...

SacredOath的博客 1348

6、探索音乐结构中的统一性:贝多芬《英雄交响曲》第一乐章的深度剖析

本文深入剖析了贝多芬《英雄交响曲》第一乐章的音乐结构,探讨其统一性的来源及表现形式。通过主题与动机、和声与调性、旋律与节奏、织体与动态等多方面的分析,揭示了这部作品在技术层面和情感表达上的卓越成就。

b9c0d的博客 518

【XSRP软件无线电】基于软件无线电平台的FM数字接收系统设计(含有完整工程资料获取链接)

随着无线通信技术的快速发展,软件无线电(Software Defined Radio, SDR)作为一种新兴的无线通信技术,逐渐成为研究和应用的热点。传统的无线接收机通常依赖于专用硬件实现其功能,灵活性和可扩展性有限。相较之下,软件无线电利用软件来实现信号处理和调制解调功能,能够适应多种频率和调制方式,使无线通信系统更加灵活和高效。在FM(频率调制)广播中,数字接收技术的应用不仅提高了信号的抗干扰能力,还能提供更好的音质和更多的附加信息(如广播电台名称、节目内容等)。

嵌入式技术开发 1367

java的List Object 转换成List String

List<Object>不能直接转成List<String> , 只能这样转换:List<String> strs = (List<String>)(List)objList

u014191624的博客 3万+

UNet改进(23):如何用SLCAM模块提升UNet的分割性能

本文提出一种改进的UNet架构,通过引入轻量化注意力模块(SLCAM)增强医学图像分割性能。SLCAM整合了通道和空间双重注意力机制:通道注意力采用全局池化和共享MLP学习通道权重,空间注意力通过7×7卷积捕捉上下文信息。网络在传统UNet基础上,在每个下采样和上采样块后加入SLCAM模块,并保持跳跃连接结构。实验表明,该方法能自适应聚焦重要特征,在不显著增加计算负担的情况下提升分割精度,特别适用于医学图像等需精确边界的场景。未来可探索三维注意力、动态参数调整等改进方向。

2501_91516851的博客 438

Java泛型

Java泛型

u010668910的博客 285

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

可以把List<String>传递给一个接受List<Object>参数的方法 不可以

可以把List传递给一个接受List参数的方法吗? A.正确 B.错误 解析,错X 原始类型可以引用一个参数化类型的对象,编译报告警告,例如, Collection c = new Vector<String>();//原来的方法接受一个集合参数,新的类型也要能传进去 参数化类型不考虑类型参数的继承关系: Vector<String> v = new Vector<Object>(); //错误!///不写<Obj

weixin_44436675的博客 2466

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

android Intent传递 object , list<object>,list<Map<String,Object>>

 android 用Intent传递 object,list,list,Object> 可参考前篇程序实例:android解析json数据 方法一:  如果单纯的传递List 或者List的话 就可以直接使用  Java代码  intent.putStringArrayListExtra(name, value)   intent.putIntegerArra

Fight for Dignitity & Responsibility 的专栏 4591

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

List<String>为何不能赋值给List<Object>

今天有个同事让我实现一个接口,这个接口里的一个方法类似于:set(List param),也即参数类型是List 我有几个方法要调用这个接口,实参类型都类似于:List、List。结果调用发现报错,参数类型不匹配。 纳闷了好久,一开始猜想的是Object类型虽然是String  Long的父类,但是List param不是List、List的父类,结果上网一查果然验证猜想是正确

二师兄 5501

Ajax传数组到后台,后台Spring MVC接受数组参数

前端代码如下,传递一个数组,后台用List<String>接收: var arrayData = []; arrayData.push("xxx"); arrayData.push("yyy"); $.post(url,{arrayData : arrayData},function(data,status) { //do something }); 后台代码如下: ...

fyk的博客 3380

java对象作为方法参数传递到一个方法里,方法内对对象内容的操作会影响到该对象

java对象作为方法参数传递到一个方法里,方法内对对象内容的操作会影响到该对象 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 对象类型参数传递 –改变值 基本数据类型参数传递 –不改变值 package test; import java.util.ArrayList; import java.util.List; public class main { public stati

weixin_44966968的博客 1831

intent传递参数

在实际项目中,页面之间传值,除了Java基本对象类型和String类型的传递,经常还有传递Object对象、List类型、List类型和全局变量等等的需求。一、传递List和List传值:intent.putStringArrayListExtra(key, list); 取值:list = (ArrayList)getIntent().getStringArrayListExtra(key);传

mjd的专栏 888

Postman请求向后台传递List<String>数据

前后台分离项目,使用Postman对写好的接口进行测试,请求类型为Post需要向后台传递List list数据下面是后台控制层的java代码 @RequestMapping(value = "/del",method = RequestMethod.POST,produces = "application/json") public Result del(@RequestBody List<...

weixin_45767321的博客 7681

Android的intent之间复杂参数的传递

老师在《Lecture03_应用程序框架及关键组件_1》课上有介绍了Intent是Activity与Activity之间,Activity与Service之间传递参数的介质,并有使用Intent和Bundle在组件之间传递数据的用法和例子,而这两种通常实现的是Java基本对象类型和String的传递。 在实际项目中,页面之间传值,除了以上几种,经常还有传递Object对象、List类型、List类

chenglansky的专栏 1354

Java可变长参数方法调用问题

不说废话,直接上代码: 1 package mytest; 2 3 import java.util.List; 4 5 public class TestClass { 6 7 public void method(List<Object> list){ 8 System.out.println("metho...

deduodie5825的博客 109

通过List<String>动态传递参数给 sqlcommand.Parameters

通过List<String>动态传递参数 private void GetallChecked_TreeNote(TreeNodeCollection aNodes, ref int TotalNodeCount, ref List<string> listItem) { foreach (TreeNode iNo...

weixin_34364135的博客 430

Java中方法的参数传递举例

Java中方法的参数传递都是值传递** 在方法中,修改一个基础类型的参数不会影响原始参数值 public static void main(String[] args) { int i = 5; func(i); System.out.println(i); } static void func(int j) { j = 10; } 在主方法调用func(int j) 时 , 参数i是实际参数 , 值为5 ,

jsxllht的博客 363

SpringMVC传递参数

1.springmvc 参数是包装类如何传递 2.@RequestParam 3.@RequestBody 4.@PathVariable 5.jquery如何传递DELETE请求 1.springmvc 参数是包装类如何传递 package com.example.SpringBootDemo1; import java.util.List; public class FF...

u014203449的博客 1709
上一篇: java怎样把string型数据转换为object型数据
下一篇: ExtJs Ext.Window关闭后不能再次弹出
javaPie
博客等级 码龄16年 1171粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值