java - 有没有一种简单的方法可以消除输入中的最后一个逗号?数字分隔符

标签 java

对于另一项作业,我需要编写一个“数字分隔符”,它将任何给定的 int 值拆分为其所有数字,并将其作为字符串返回到主类。

我已经启动并运行了程序,但我的输出有一个小问题。

public class NumberSeperator {

   static String splitNumber(int zahl)  {
       String s = Integer.toString(zahl);
       return s;
   }

   public static void main(String args[]) {
       System.out.println("Input a Number: ");
       int zahl = readInt();

       String ziffern = splitNumber(zahl);
       for (int i = 0; i < ziffern.length(); i++) {
           System.out.print(ziffern.charAt(i) + ",");
       }
   }
}

1234的输出应该是:1,2,3,4 实际输出为:1,2,3,4,

冒着听起来极其愚蠢的风险,有一个简单的解决办法吗?

最佳答案

如何以 ,nextElement 的形式打印第一个不带逗号的元素和休息

one, two, three
^^^---------------- - before loop
   ^^^^^----------- - loop iteration
        ^^^^^^^---- - loop iteration

可以这样实现:

if(ziffern.length()>0){
    System.out.print(ziffern.charAt(0));
}
for(int i=1; i<ziffern.length(); i++){
    System.out.print(", "+ziffern.charAt(i));
} 

或者您可以先将 ziffern 转换为 String[] 数组,然后使用内置解决方案:String.join(delimiter, data)

System.our.print(String.join(",", ziffern.split("")));

关于java - 有没有一种简单的方法可以消除输入中的最后一个逗号?数字分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58541236/

相关文章:

java - 使用 Jackson 创建包含数组和自定义字段的有效 JSON

java - 如何指示 JVM 尽可能减少内存占用?

java - 为什么我已经安装了 eclipse 的 e(fx)clipse 却无法导入 javafx

java - Tomcat显示404窗口

Java编译错误: List<Integer> cannot be converted to ArrayList<Integer>

java - 如何以最简单的方式将AsyncTask切换到Loader?

java - LWJGL3 : Overloaded glBufferData methods

java - 下载pdf文件并保存到SD卡

java - 获取所有数字的 3、5、7 倍数之和直到 1000 的函数

java - 无法在 Flex 应用程序中从 Java 调用 Web 服务