Java 在数组中有重复项可以吗?

Java 在数组中有重复项可以吗?,java,Java,我正在做我自己的项目。一个项目,你可以输入日期,然后程序会给你给定日期的日期 这是我的阵列: String []days = {"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday", "Sunday", "Monday"}; 我的情况: if(inputDate <= 6){ firstCase = yearsCode[0] + inputDate + 3 - 7;

我正在做我自己的项目。一个项目,你可以输入日期,然后程序会给你给定日期的日期

这是我的阵列:

String []days = {"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday", "Sunday", "Monday"};
我的情况:

if(inputDate <= 6){
                  firstCase = yearsCode[0] + inputDate + 3 - 7;
                  System.out.println("January " + inputDate + " is " + days[firstCase]);}

if(inputDate是的,可以在数组中进行复制,但您可能会找到更好的方法。

我阅读了链接的内容。以下是解决方案。
将星期日和星期一从上一个中删除。如果结果大于6,则只能使用7的倍数(do mod)进行减法。 所以你的代码应该是

  firstCase = (yearsCode[0] + inputDate + 3)%7;
  System.out.println("January " + inputDate + " is " + days[firstCase]);

数组不在乎你在数组中放了什么,如果你愿意,你可以在数组中有一个对象的多个副本

但是,为了更优雅地解决问题,可以确保计算的索引永远不会超过数组中的元素数。为此,可以使用模运算符%

firstCase = yearsCode[0] + inputDate + 3 - 7; firstCase = firstCase % 7; firstCase=yearsCode[0]+inputDate+3-7; firstCase=firstCase%7;
数组中可以有重复的值吗

new String[]{"yes", "yes", "and", "absolutely", "yes"};

需要更多的lil说明。您不必重复数组中的元素。这不是限制,但在您的情况下,完全没有必要从开始删除星期天,从结束删除星期一。将天[firstCase]更改为天[firstCase+1]在你的算法中,sat是6,fri是5,所以索引从1开始。如果我删除最后两天,是否可能。周六之后,它将在周日返回?