从Java中的字符串中删除前导零
在Java中,有很多方法可以从字符串中删除前导零。在这里,我们将使用String和Arrays类的一些基本功能,以从字符串中删除前导零。
因此,此方法首先将字符串转换为字符数组,以便对字符串中每个字符的求值变得更简单。现在,比较每个字符并找到第一个非零字符似乎很简单。但是这里有一个限制,在Java中,数组没有equals方法来比较它的值,因此这里我们将使用valueOf()String类的方法来比较每个字符。
现在我们获得了字符串中第一个非零数字的位置,剩下的唯一事情就是将数组修剪到第一个非零数字的位置。对于这种使用copyOfRange()三个参数的使用方法,一个是原始数组,第二个是要开始复制的位置,第三个是要复制到的位置。
示例
public class RemoveLeadingZeroes {
public static void main(String[] args) {
String str = "00099898979";
int arrayLength = 0;
char[] array = str.toCharArray();
arrayLength = array.length;
int firstNonZeroAt = 0;
for(int i=0; i<array.length; i++) {
if(!String.valueOf(array[i]).equalsIgnoreCase("0")) {
firstNonZeroAt = i;
break;
}
}
System.out.println("first non zero digit at : " +firstNonZeroAt);
char [] newArray = Arrays.copyOfRange(array, firstNonZeroAt,arrayLength);
String resultString = new String(newArray);
System.out.println(resultString);
}
}输出结果
使用以下文本创建的myCSV.csv文件
first non zero digit at : 3 99898979