java - 从 int 中删除第一位数字,但保留前导零

标签 java string int

如果 int 超过 3 位数字,我需要编写代码来删除第一位数字。例如,如果我有 1055,那么输出将为 055。我当前的代码删除了第一个数字,但问题是它也删除了零并输出 55 而不是 055。我该如何解决这个问题呢?我指的变量是校验和

 int checksum = 0;
 int l = message.length();

 for (int i = 0; i < l; i++) { 3
   checksum += message.charAt(i);
 }
 if (checksum >= 1000) {
   checksum = Integer.parseInt(Integer.toString(checksum).substring(1));
 }
 physicalLayer.sendFrame("(" + message + ":" + checksum + ":.)");

最佳答案

显然不能在 int 数据类型中保留前导零。 因此,将结果保存在 String 副本中

int checksum=0;
int l= message.length();

for (int i = 0; i < l; i++) { 
checksum+= message.charAt(i);

}

String sChecksum = Integer.toString(checksum);
if(checksum>=1000){
sChecksum= sChecksum.substring(1);   

}


physicalLayer.sendFrame("("+message+":"+sChecksum+":.)");

关于java - 从 int 中删除第一位数字,但保留前导零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53368232/

相关文章:

string - GoLang - 内存分配 - []字节与字符串

java - Java中如何删除字符串开头的空格而不是制表符?

c++ - 如何按顺序删除 vector 中的重复值?

c - 如何在C中通过udp套接字发送整数数组?

C unsigned int 数组和位移

java - 如何帮助 Java 解析 RxJava 组合方法中的类型?

java - 当使用系统属性定义资源时,获取 SQLException : Driver:org. hsqldb.jdbcDriver 在 tomee 中为 URL 返回 null

c# - Int 而不是 Long,错误?

java - 我可以在 Java 中通过引用传递原始类型吗?

java - 解析 JSON 字符串时出现问题