如何用变量替换静态字符串并转换为长字符串?

我有以下代码来生成连续的 Mac 地址。如果我在创建 hextint 时静态定义字符串,则代码运行良好。但是,如果我将字符串更改为变量,如下所示,我会收到错误消息:


线程“AWT-EventQueue-0”中的异常java.lang.NumberFormatException:对于输入字符串:“6CDFFB6000000A”


我确定我在这里遗漏了一些简单的东西。为什么字符串作为变量没有转换?任何帮助表示赞赏。


    String macAddr = last_mac.getText();

//             int qty = Integer.parseInt(label_qty.getText());

             System.out.println("String to convert: " + macAddr);             

//             long hexint = Long.parseLong("6CDFFB60000000", 16);

             long hexint = Long.parseLong(macAddr, 16);


             System.out.println("String converted to Long:" +hexint);     

             System.out.println("10+ previous number:" + (10+hexint));

             System.out.println("Convert back to hex: " + Long.toHexString(10+hexint).toUpperCase());


        for(int i = 1; i < 10+1; i++){

            System.out.println(i +" MAC: " + Long.toHexString(hexint + i).toUpperCase());

            macAddr = Long.toHexString(hexint + i).toUpperCase();

        }


元芳怎么了
浏览 135回答 1
1回答

料青山看我应如是

您的文本包含尾随空格。你应该通过trim()方法删除它。试试下面的代码 & 它应该适合你。String&nbsp;macAddr&nbsp;=&nbsp;last_mac.getText().trim();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java