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开始。如果我删除最后两天,是否可能。周六之后,它将在周日返回?