列出<string>,其值为'Integer'</string>

时间:2013-09-21 23:07:41

标签: java string list integer

还有其他选择吗? (1组)

    class team {
        List<String> team = new ArrayList<String>
        int score = 0;
    }

是否有一个存储List或Set'String'的对象,它可以保存Integer的值?

提前致谢。

2 个答案:

答案 0 :(得分:1)

您可能需要的是一种同时包含您关注的Stringint的新类型,例如:

public class Score {
    String group;
    int score;
}

...

List<Score> scores = new ArrayList<Score>();

要回答原始问题:StringInteger之间最窄的常见类型是Object,您可以构建这样的List

List<Object> group = new ArrayList<Object>();
group.add("string");
group.add(1);

当然,这不仅限于StringInteger类型,您可以添加任何类型的对象。

或者,您可以将Integer强制转换为String

String someNumber = String.valueOf(1);

或构建一个限制性更强的新类,并充当一种联合:

public class StringOrInteger {
    private final Object value;
    public StringOrInteger(String string) {
        value = string;
    }
    public StringOrInteger(Integer integer) {
        value = integer;
    }
    public Object getValue() {
        return value;
    }
}

...然后列出这些:

List<StringOrInteger> group = new ArrayList<StringOrInteger>();

(至少是编译时限制)

你可以对这个类变得更加漂亮,并使它返回一个正确转换的对象,但我想这取决于你想要使用它的用例。

答案 1 :(得分:1)

听起来你需要一个Score对象:

class Score
{
  int points;
  String groupName;
}

然后是List<Score>他们