在Java中,我可以使用DecimalFormat在数字之间输入破折号(-)吗?

在Java中,我可以使用DecimalFormat在数字之间输入破折号(-)吗?,java,formatting,number-formatting,Java,Formatting,Number Formatting,我可以使用DecimalFormat在数字之间输入破折号(-)吗?我一直在尝试这样做,但不知怎的,当我运行程序时,破折号以数字结尾,如:129329- 我希望它看起来像这样:129-329以下是如何做到这一点 import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; public class NewClass { public static voi

我可以使用
DecimalFormat
在数字之间输入破折号(-)吗?我一直在尝试这样做,但不知怎的,当我运行程序时,破折号以数字结尾,如:129329-


我希望它看起来像这样:129-329

以下是如何做到这一点

    import java.text.DecimalFormat;  
    import java.text.DecimalFormatSymbols;  

    public class NewClass  
    {  
        public static void main(String[] args)  
        {  
            DecimalFormatSymbols phoneNumberSymbols = new DecimalFormatSymbols();  

           // Use space not comma to thousands: 10 000 not 10,000.   
           phoneNumberSymbols.setGroupingSeparator('-');   

           DecimalFormat phoneNumberFormat = new DecimalFormat("####,###,###", phoneNumberSymbols);  

           System.out.println("Some mobile number:" + phoneNumberFormat.format(567884968L));  

       }  
   }

以下是您如何做到这一点

    import java.text.DecimalFormat;  
    import java.text.DecimalFormatSymbols;  

    public class NewClass  
    {  
        public static void main(String[] args)  
        {  
            DecimalFormatSymbols phoneNumberSymbols = new DecimalFormatSymbols();  

           // Use space not comma to thousands: 10 000 not 10,000.   
           phoneNumberSymbols.setGroupingSeparator('-');   

           DecimalFormat phoneNumberFormat = new DecimalFormat("####,###,###", phoneNumberSymbols);  

           System.out.println("Some mobile number:" + phoneNumberFormat.format(567884968L));  

       }  
   }

如果您的电话号码是一个字符串,以下是解决方案:

import java.text.DecimalFormat;  
import java.text.DecimalFormatSymbols;  

public class NewClass {

    public static void main(String[] args) {

        long lg_tel = Long.parseLong(example.getString("tel")); // String to Long
        DecimalFormatSymbols phoneNumberSymbols = new DecimalFormatSymbols();  

        // Use space not comma to thousands: 10 000 not 10,000.   
        phoneNumberSymbols.setGroupingSeparator('-');   

        DecimalFormat phoneNumberFormat = new DecimalFormat("####,###,###", phoneNumberSymbols);  

        (...)
        tv.setText(phoneNumberFormat.format(lg_tel).toString());  

   }  

}

如果您的电话号码是字符串,以下是解决方案:

import java.text.DecimalFormat;  
import java.text.DecimalFormatSymbols;  

public class NewClass {

    public static void main(String[] args) {

        long lg_tel = Long.parseLong(example.getString("tel")); // String to Long
        DecimalFormatSymbols phoneNumberSymbols = new DecimalFormatSymbols();  

        // Use space not comma to thousands: 10 000 not 10,000.   
        phoneNumberSymbols.setGroupingSeparator('-');   

        DecimalFormat phoneNumberFormat = new DecimalFormat("####,###,###", phoneNumberSymbols);  

        (...)
        tv.setText(phoneNumberFormat.format(lg_tel).toString());  

   }  

}

如果您包含将破折号放在末尾的代码,这将非常有用。如果您包含将破折号放在末尾的代码,这将非常有用。