Java 如何打印数组元素索引位置

Java 如何打印数组元素索引位置,java,Java,比如说,我有一个31元素的数组,每个元素包含一天的费用;假设我在某些日子里没有任何开支。 如何打印元素以及该元素的索引或下标 例如,第25天有100美元 第31天有200美元 但是它是这样打印的 第一天100美元 第二天200美元 for(daysCounter=0;daysCounter=0){ System.out.println(“日费用”+(DaysCenter+1)+“为$”+一月费用[DaysCenter]); monthTotal=monthTotal+一月费用[日中心]; }否则

比如说,我有一个31元素的数组,每个元素包含一天的费用;假设我在某些日子里没有任何开支。 如何打印元素以及该元素的索引或下标

例如,第25天有100美元
第31天有200美元
但是它是这样打印的
第一天100美元
第二天200美元

for(daysCounter=0;daysCounter=0){
System.out.println(“日费用”+(DaysCenter+1)+“为$”+一月费用[DaysCenter]);
monthTotal=monthTotal+一月费用[日中心];
}否则{
系统输出打印(“”);
}       
}
System.out.println(“您一月份的费用为:$”+每月总额);

问题是您在
0
索引中插入数组
$100
,不在
24
索引中,并在
1
索引中插入
$200
,不在
30
索引中,因为您有:

  day 1 $100 
  day 2 $200 

您需要在范围
0-23
索引中插入值
0
的数据,并在
24
索引中插入值
插入值
100
,以此类推,值
200

似乎您只是在为包含费用i的那一天添加值。e

int[]januaryExpenses={100200}

而不是数组
januaryExpenses
必须包含31个元素。我e

int[]januaryExpenses={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0100,0,0,0,0,0200}

那么你的代码就可以工作了

int[] januaryExpenses = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,200};
for(int daysCounter=0; daysCounter<31; daysCounter++) { 
    if(januaryExpenses[daysCounter]>0) {    
        System.out.println(" expense for day " + (daysCounter +1) + " is $" + januaryExpenses[daysCounter]);
        monthTotal=monthTotal+januaryExpenses[daysCounter];

    } else {
        System.out.print("");
    }       
}
System.out.println("Your January expenses are: $" +monthTotal);
int[]januaryExpenses={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0100,0,0,0,0,0200};
对于(int dayscenter=0;dayscenter=0){
System.out.println(“日费用”+(DaysCenter+1)+“为$”+一月费用[DaysCenter]);
monthTotal=monthTotal+一月费用[日中心];
}否则{
系统输出打印(“”);
}       
}
System.out.println(“您一月份的费用为:$”+每月总额);

上面的代码看起来不错。我想问题一定在于如何设置数组。谢谢,它会打印整个三十个元素,甚至是没有值的元素。你说的“没有值”是什么意思?它必须打印一些数字,对吗?而且它看起来根本不会打印
$0
一月费用的类型是什么?你如何初始化数组?@RadadSmo,你的数组必须有31个元素,那么只有上面的代码才能工作,假设你一天的开销是0,那么在数组中提到0。我感谢你写的每封信,但请注意,在我到达第31天之前,系统会提示我输入我想要输入其费用的日期,并且我可能会在同一天多次输入费用。从逻辑上讲,我可能有一天什么也没花。因此,我想打印第1-31天的数字及其费用。在此表格中,如果有费用,请打印这些数字以及这些费用是在哪一天花费的。而且数组也不像{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24}那样是常数。数组只声明int[]JanuaryExpenses=new int[31]没有常量或初始化values@RadadSmo,不要使用数组。使用
ArrayList
或使用
hashmap
可以更新特定键的值
int[] januaryExpenses = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,200};
for(int daysCounter=0; daysCounter<31; daysCounter++) { 
    if(januaryExpenses[daysCounter]>0) {    
        System.out.println(" expense for day " + (daysCounter +1) + " is $" + januaryExpenses[daysCounter]);
        monthTotal=monthTotal+januaryExpenses[daysCounter];

    } else {
        System.out.print("");
    }       
}
System.out.println("Your January expenses are: $" +monthTotal);