gpt4 book ai didi

java - 如何检查ArrayList中与String对象关联的值?

转载 作者:行者123 更新时间:2023-12-01 21:51:07 26 4
gpt4 key购买 nike

我有一个 ArrayList,其中包含多个不同类型的对象。在一个索引处,我有一个带有字符串值的元素。我知道索引位置,并且知道该字符串与整数或 double 值关联。

如何检查与对象关联的值是 double 型还是整数?

编辑:这并不是说我试图比较 5.5 和 5,当我尝试检查任一对象的数据类型时,我收到编译器错误,指出我无法解析对象。

我的数组列表由两个String 对象组成。我正在做的是解析字符串对象,而不是与该对象关联的字符串值

编辑2:更正!!!这些对象实际上不是字符串对象。相反,它们只是没有与其关联的特定类的对象。无需在数组列表中声明对象类型,数组列表将自动将每个元素分配给一个对象值(而不是一个对象是 String、一个对象是 double、一个对象是 int 等)

~~~

我的代码示例:

import java.util.ArrayList;
public class idk {

public static void main(String[] args) {
ArrayList myList1 = new ArrayList();
ArrayList myList2 = new ArrayList();

myList1.add("5.5");
myList2.add("5");

//How does one check if the value associated to the String object
//in the arrayList (like myList.get(1)) is a double or an integer?
}
}

我只尝试实现 isDouble 方法,但它检查对象是否是 double 而不是字符串对象的值。

import java.util.ArrayList;

public class idk {

//I've attempted to try using this method to check the value but I get
//a compiler error saying I can't use the isDouble method which checks
//for a String value, not the value of the actual String object in the arraylist
boolean isDouble(String str) {
try {
Double.parseDouble(str);
return true;
}
catch (NumberFormatException e) {
return false;
}
}


public static void main(String[] args) {
ArrayList myList1 = new ArrayList();
ArrayList myList2 = new ArrayList();

myList1.add("5.5");
myList2.add("5");

if (isDouble(myList1.get(0))==true) {
System.out.println("The object in pos 0 is a double");
}else {
System.out.println("The object in pos 0 is not a double");
}

if (isDouble(myList1.get(0))==true) {
System.out.println("The object in pos 0 is a double");
}else {
System.out.println("The object in pos 0 is not a double");
}

}

最佳答案

我要做的就是尝试将字符串解析为整数和 double ,然后检查结果值是否相等。

“5”作为 double 只是 5.0,作为整数则为 5。它们相等,因此您的字符串是整数。

“5.2”作为 double 是 5.2,作为整数是 5。它们不相等,因此您的字符串不是整数 - 根据问题的构造,它必须是 double 。

编辑:我刚刚尝试了一下,如果将“5.2”传递给Integer.parseInt(),它将抛出异常NumberFormatException。因此,如果您的字符串引发异常,它就会有一个小数点并表示一个 double 。否则它是一个整数。

关于java - 如何检查ArrayList中与String对象关联的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35188149/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com