Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java从字符串转换为int_Java_String_Parsing_Int - Fatal编程技术网

java从字符串转换为int

java从字符串转换为int,java,string,parsing,int,Java,String,Parsing,Int,我需要解析标签的值,以便将其存储为整数 JLabel lblSeatNo; int seatNo; seatNo = Integer.parseInt(lblSeatNo.getText()); 我在其他时候用过这个方法,但现在我得到了一个数字格式的异常,我不明白为什么 如果它有助于标签的价值可以变化,它的一般格式是:“A131”或“B504” 谢谢。点击此链接 例如,Integer.parseInt(myHexValue,16)假设您希望将其作为十六进制数(即基数16),则必须为调用提供

我需要解析标签的值,以便将其存储为整数

JLabel lblSeatNo;
int seatNo;

seatNo = Integer.parseInt(lblSeatNo.getText());
我在其他时候用过这个方法,但现在我得到了一个数字格式的异常,我不明白为什么

如果它有助于标签的价值可以变化,它的一般格式是:“A131”或“B504”

谢谢。

点击此链接


例如,Integer.parseInt(myHexValue,16)

假设您希望将其作为十六进制数(即基数16),则必须为调用提供基数-

如果需要十进制值(例如,以10为基数)并跳过字母,可以这样做

seatNo = Integer.parseInt(lblSeatNo.getText().substring(1));

尝试
int value=Integer.parseInt(十六进制字符串,16)如果您知道字符串表示形式将始终为十六进制。您可能还需要检查所述方法的有效性。

取决于您想要什么: 如果您只想解析数字(不包括a、b等),那么必须调用substring来删除字母。 如果字母是十六进制数字,那么你可以打电话给


整数.parseInt(hexNo,16)

从您的评论中,似乎您只想从座椅标签中提取数字。但是,既然您说还需要重新创建座椅标签,那么在对象中,您可能还需要为包含字母的
行添加字符串

所以你可以这样做(假设只有一封信)

然后再去拿标签

 String label = row + seatNo;

您如何将
A131
转换为
int
?A131和B504都不是有效数字!如果要将它们解析为十六进制数,只需精确基数即可
Integer.parseInt(lblSeatNo.getText(),16),否则它将使用默认的基数10。它们在基数16中有效。在我看来,lblSeatNo不太十六进制。谁会用十六进制值来计算数字@正如他们在España中所说的W.K.S;Qué?座位号不是十六进制的,而是要保留为“A103”或其他任何形式,这些数据要存储在LinkedList中存储的航班预订对象中,我想知道以int形式存储seatNo是否是我的错误。如果飞机的座位少于6列,你仍然可以使用十六进制。否则,您需要将字母和int存储在一起(我建议使用一个类)。“B692”可以是十六进制int。。。。“Z692”不能。你的要求是什么?
 int seatNo = Integer.parseInt(lblSeatNo.getText().substring(1));
 String row = lblSeatNo.getText().subString(0,1);
 String label = row + seatNo;