java - 创建带有天数的数字模式

标签 java numbers days

好吧,我需要用日期数字制作一个数字模式,例如:1 - 星期一,2 - 星期二,3 - 星期三,直到 7 - 星期日。如果我输入“n”,我会得到以下结果:

n=4
1 2 3 4

n=7
1 2 3 4 5 6 7

n=12
1 2 3 4 5 6 7 1 2 3 4 5

如果 n<=14 我已经成功制作了这个程序,但如果 n>14 我得到:
n=17
1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 9 10
什么时候应该是:
n=17
1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3

这是我的代码

for (x=1;x<=n;x++){
    System.out.print(x+" ");
    if (x==7){
        for (x=1;x<=(n-7);x++)
        System.out.print(x+" ");
        break;
    }
}

提前致谢

最佳答案

试试这个:

for (int i = 0; i < n; i++)
    System.out.print(i % 7 + 1 + " ");

每当您想要实现“重复”行为(即一系列数字达到某个值然后重新开始)时,请使用 % 运算符和一些模运算来实现所需的效果影响。对于n = 17,上面将打印:

1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3

关于java - 创建带有天数的数字模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19307429/

相关文章:

java - 使用 Spring-WS 时如何修复 Java 中转换 stax 源错误?

java - 无法为应用引擎项目创建谷歌凭据

java - java中char数组的使用

python 和 Pandas : Convert series of datetime-values to consecutive day-indices

excel - 检查有效日期 - VBA

java - Android Studio 错误 - 错误 :java. util.concurrent.ExecutionException : com. android.tools.aapt2.Aapt2Exception:AAPT 错误

java - 从具有千位分隔符的字符串中解析数字

c++ - 为什么随机数生成器的位数有限制?

mysql - 检查字符串编号

C# - 搜索不同日期的 2 个 DateTime 对象之间的时间