如何在ArrayList对象中存储方法或值



下面是我的主要类

ArrayList<String> e = new ArrayList<>();
e.add("Mark");

下面是我的方法类

int counter = 0;
public int increaseCounter(){
counter++;
return counter;
}

我该如何做之类的事情

e.get(0) = method.increaseCounter();

所以Mark可以有一个1 的计数器

有一个类似于-的地图

Map<String, Integer> e = new HashMap<>();
e.put("Mark", 0);

然后要增加Mark的计数器,请调用

e.merge("Mark", 1, Integer::sum);

完整示例:-

public static void main(String[] args) {
Map<String, Integer> e = new HashMap<>();
e.put("Mark", 0);
increaseCounter(e, "Mark");
System.out.println(e.get("Mark"));
}
private static void increaseCounter(Map<String, Integer> e, String key) {
e.merge(key, 1, Integer::sum);
}

打印1

您可以使用这个:

import java.util.Map;
import java.util.HashMap;
Map<String, Integer> e = new HashMap<String, Integer>();
e.put("Mark", 0);

要做到这一点,必须进行面向对象编程。

例如

class Data{
private int counter = 0;
public int increaseCounter(){
counter++;
return counter;
}
}

然后只使用//Java 5-9…

List<Data> e = new ArrayList<>();
e.add(new Data());

或//Java 10+。。。

var e = new ArrayList<Data>();
e.add(new Data());

最新更新