如何解决将字符串与List <Integer>中的值进行比较
我有两个值5和6,它们都是整数,它们是ArrayList的一部分。我还有另一个具有String输入的boolean方法,我必须比较该String的值并遍历该列表,看看该值是否与该列表中的元素匹配。如果匹配,那么我应该返回true,否则返回false。目的是查看我的值是否与列表中的值之一匹配。 该列表是常量类的一部分,并且我的方法位于Validator类中。下面是我的代码:
Constants.java:
public static final List<Integer> TYPES = new ArrayList<Integer> (Arrays.asList(5,6));
Validator.java:
public static boolean isPromoTypeFormatValid (String value) {
value = Util.getTrimmedValue(value);
int intValue = Integer.valueOf(value);
List <Integer> promoTypeList = scpduuConstants.PROMO_TYPES;
for(int i = 0; i < promoTypeList.size(); i++) {
if (promoTypeList.contains(intValue)) {
return true;
}
}
return false;
}
是否有更好的方法来执行此操作?如果将String值与ArrayList值比较为整数,是否会出现问题?我对此有些陌生,但尝试找出最有效的方法。请让我知道任何建议。
解决方法
也许这会有所帮助:
public static final List<Integer> TYPES = new ArrayList<Integer>(Arrays.asList(5,6));
public static void main(String[] args) {
final String value = "5";
checkValue(value);
}
public static boolean checkValue(String value) {
final var valueAsInt = Integer.parseInt(value.trim());
return TYPES.contains(valueAsInt);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。