第六章第三十七题(格式化整数)(Format an integer)

6.37(格式化整数)使用下面的方法头编写一个方法,用于将整数格式化为指定宽度:
public static String format(int number, int width)
方法为数字number返回一个带有一个或多个以0作为前缀的字符串。字符串的位数就是宽度。比如,format(34,4)返回0034,format(34,5)返回00034。如果数字宽于指定宽度,方法返回该数字的字符串表示。比如,format(34,1)返回34。

6.37(Format an integer)Write a method with the following header to format the integer with the specified width.
public static String format(int number, int width)
The method returns a string for the number with one or more prefix 0s. The size of the string is the width. For example, format(34, 4) returns 0034 and format(34, 5) returns 00034. If the number is longer than the width, the method returns the string representation for the number. For example, format(34, 1) returns 34.
Write a test program that prompts the user to enter a number and its width, and displays a string returned by invoking format(number, width).

下面是参考答案代码:

import java.util.*;

public class FormatAnIntegerQuestion37 {
	public static void main(String[] args) {
		int number,width;
		
		Scanner inputScanner = new Scanner(System.in);
		System.out.print("Enter the number: ");
		number = inputScanner.nextInt();
		
		System.out.print("Enter the width: ");
		width = inputScanner.nextInt();
		
		System.out.printf("The string is %s", format(number, width));
		
		inputScanner.close();
	}
	public static String format(int number, int width) {
		String numberString = String.valueOf(number);
		int lengthOfNumber = numberString.length();
		for(int i = 1;i <= width - lengthOfNumber;i++)
			numberString = "0" + numberString;

		return numberString;
	}
}

运行效果:
在这里插入图片描述

注:编写程序要养成良好习惯
1.文件名要用英文,具体一点
2.注释要英文
3.变量命名要具体,不要抽象(如:a,b,c等等),形式要驼峰化
4.整体书写风格要统一(不要这里是驼峰,那里是下划线,这里的逻辑段落空三行,那里相同的逻辑段落空5行等等)
5.普通变量,方法名要小驼峰,类名要大驼峰,常量要使用全部大写加上下划线命名法
6.要学习相应的代码编辑器的一些常用快捷键,如:快速对齐等等

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值