List<Int>.ForEach 如果我想把list中每个数字 都加10 该怎么做 C#

List<Int>.ForEach 如果我想把list中每个数字 都加10 该怎么做 C#,第1张

首先必须知道一点,就是int是值类型的,所以你这里即时用List<Int>.ForEach枚举出了每个成员,你对他们的改值 *** 作也是无效的。

不过如果换成了引用类型的就可以改变了,同样的你也可以把int类型的装箱成object类型的,当然,在修改值的时候需要重新拆箱再装箱,性能损失有一些!

下面的例子输出结果为:

21

23

25

代码:

using System

using System.Collections.Generic

using System.Linq

using System.Text

namespace ListDemo

{

public class Person

{

private string name

private int age

public string Name

{

get { return name}

set { name = value}

}

public int Age

{

get { return age}

set { age = value}

}

public Person() { }

public Person(int age) { this.age = age}

}

class Program

{

static void Main(string[] args)

{

List<Person>list = new List<Person>()

list.AddRange(new Person[] { new Person(11), new Person(13), new Person(15) })

list.ForEach(p =>p.Age += 10)

list.ForEach(

delegate(Person item)

{

Console.WriteLine(item.Age)

}

)

Console.ReadKey()

}

}

}

按照你的要求编写的Java程序如下

import java.util.List

import java.util.ArrayList

public class A {

 public static void main(String[] args) {

  List<Integer> a=new ArrayList<Integer>()

  for(int i=1i<=10i++){

   a.add(i)

  }

  a.set(6,200)

  System.out.println(a)

 }

}

运行结果

[1, 2, 3, 4, 5, 6, 200, 8, 9, 10]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11943890.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存