Java 字符串到int表示nullpointerexception
当我运行这段代码时,字符串到int的转换正在输出NULL?当我打印出字符串时,它会给我一个字符串编号,但当我试图将该字符串转换为int时,它会显示null,这是为什么Java 字符串到int表示nullpointerexception,java,string,int,Java,String,Int,当我运行这段代码时,字符串到int的转换正在输出NULL?当我打印出字符串时,它会给我一个字符串编号,但当我试图将该字符串转换为int时,它会显示null,这是为什么 for(int j = 0; j < removetrack.size(); j++){ String removetrackArray[] = removetrack.get(j).split(" "); String candidateBefore = ""; int removetracklocati
for(int j = 0; j < removetrack.size(); j++){
String removetrackArray[] = removetrack.get(j).split(" ");
String candidateBefore = "";
int removetracklocation = Arrays.asList(removetrackArray).indexOf(past)-1;
if(removetracklocation != 1) {
String candidateBefore = "";
System.out.println(removetrack.get(j)+" location = "+ removetracklocation +" "+
(past)+" candidate name "+dictionary.get(votedfor) );
candidateBefore= Arrays.asList(removetrackArray).get(removetracklocation+1);
System.out.println(" this is a string "+candidateBefore);
System.out.println( Integer.getInteger(candidateBefore));
}
}
for(int j=0;j
Integer.getInteger不会将字符串强制转换为int,int返回系统属性的值(请参阅)。您应该改为使用。Integer.getInteger不会将字符串强制转换为int,int返回系统属性的值(请参阅)。您应该改为使用。为了救援:
确定函数的整数值
具有指定属性的系统属性
名字
使用Integer.parseInt
将字符串转换为int,使用Integer.valueOf
将字符串转换为整数。请执行以下操作:
确定函数的整数值
具有指定属性的系统属性
名字
使用Integer.parseInt
将字符串转换为int,使用Integer.valueOf
将字符串转换为整数。来自以下文档:
确定具有指定名称的系统属性的整数值。
第一个参数被视为系统属性的名称。可以通过System.getProperty(java.lang.String)方法访问系统属性。然后将此属性的字符串值解释为整数值,并返回表示此值的整数对象。可以通过getProperty的定义找到可能的数字格式的详细信息
如果没有具有指定名称的属性,如果指定名称为空或null,或者属性的数字格式不正确,则返回null
换句话说,它不解析整数。要解析整数,请使用integer.parseInt
(获取int
)或integer.valueOf
(获取整数
)
然而,即使你的描述也有点奇怪——你在标题中声称它给了你一个NullPointerException
,但你接着说它正在打印null
。是哪一个?他们非常不同。我看不出您给我们的代码如何在Integer.getInteger
处抛出NullPointerException
或者,如果这是用户输入的值,您可能希望使用java.text.NumberFormat
。从文档中获取:
确定具有指定名称的系统属性的整数值。
第一个参数被视为系统属性的名称。可以通过System.getProperty(java.lang.String)方法访问系统属性。然后将此属性的字符串值解释为整数值,并返回表示此值的整数对象。可以通过getProperty的定义找到可能的数字格式的详细信息
如果没有具有指定名称的属性,如果指定名称为空或null,或者属性的数字格式不正确,则返回null
换句话说,它不解析整数。要解析整数,请使用integer.parseInt
(获取int
)或integer.valueOf
(获取整数
)
然而,即使你的描述也有点奇怪——你在标题中声称它给了你一个NullPointerException
,但你接着说它正在打印null
。是哪一个?他们非常不同。我看不出您给我们的代码如何在Integer.getInteger
处抛出NullPointerException
或者,如果这是用户输入的值,您可能希望使用java.text.NumberFormat
。Integer.getInteger()
用于系统属性:
Integer.getInteger("sun.arch.data.model");
Integer.getInteger()
用于系统属性:
Integer.getInteger("sun.arch.data.model");
呸+1比我打字快。:)呸+1比我打字快。:)您不应至少根据此链接使用此..-您不应至少根据此链接使用此-