java - 一年中的编程作业月份

标签 java substring variable-assignment

我正在接受一些编程练习的培训,这个练习让我忙了很长一段时间。它说如下:

您的工作是将数字 1,2,3,...,12 转换为相应的月份名称一月、二月、三月、...、十二月。实现一个 Month 类,其构造函数参数是月份编号,其 getName 方法返回月份名称。提示:创建一个非常长的字符串“January February March ...”,在其中添加空格以使每个月份名称具有相同的长度。然后使用子字符串提取所需的月份。

不幸的是,我并不是每个月都留出相同数量的空间,但如果我仔细考虑一下这些数字,这应该不是问题。

目前我还没有使用 switch 语句。我会在不久的将来了解它。使这个分配有点棘手的是我不能使用数组、开关、if/for 循环。请记住,我必须遵循文本中的提示。我不能简单地使用文字,而是需要制作 1 个大字符串并返回带有月份的子字符串。

问题是:如何将数字连接到特定的子字符串?感谢帮助!

这是我的代码:

public class Month
{
private int number;
private String month;

public Month(int theNumber)
{
    number = theNumber;
}

public String getName()
{
    String month = "January February March April May June July August September October November December";
    String january = month.substring(0,7);//January
    String february = month.substring(8,16);//February
    String march = month.substring(17,22);//March
    String april = month.substring(23,28);//April
    String may = month.substring(29,32);//May
    String june = month.substring(33,37);//June
    String july = month.substring(38,42);//July
    String august = month.substring(43,49);//August
    String september = month.substring(50,59);//September
    String october = month.substring(60,67);//October
    String november = month.substring(68,76);//November
    String december = month.substring(77,84);//December        
    return month;
}
}

最佳答案

如果当月字母加上空格的数量相同,您可以执行以下操作:

  1. 查找该月最长的名称。
  2. 用空格填充所有其他月份名称,以具有相同数量的字母。 信件最多的月份是九月。其中有 9 个字母
  3. 使用具有给定月份数的子字符串,例如:

    number = 0 = January
    number = 1 = February
    number = 11 = December
    

然后您可以使用以下命令从字符串中提取月份名称:

substring(number*9, number*9+9)

关于java - 一年中的编程作业月份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21076182/

相关文章:

javascript - 如何使用 Javascript 删除多个元素中字符的最后一个实例之前的文本?

python - 使用映射到数字的字母字符创建字典

objective-c - 三元条件运算符中的赋值产生 “Expression is not assignable”错误

java - 在Java中,为什么map.get(key)[0]作为左侧有效,而map.get(key)则无效?

Java异常处理:/zeo

java - Spring Boot RestController 继承和不明确的映射问题

java - Android(Eclipe)视频 View 文件名路径?

java - 独立 JPA 序列

c++ - 如何仅打印完整路径名的文件部分?

r - 在字母前加一个点