Java 二维和数组
我想把这个二维数组中每个州的票数和每个候选人的票数相加 这些是要求:Java 二维和数组,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我想把这个二维数组中每个州的票数和每个候选人的票数相加 这些是要求: 修改程序,以便显示每个州的总投票数 (即,在每一行中添加一列,将所有投票的总票数相加。) (每个州的候选人) 修改程序,以便显示每个候选人的总票数(即,添加最后一行,显示所有三列投票的总票数) publicstaticvoidmain(字符串[]args)引发IOException { //此处的TODO代码应用程序逻辑 文件选择=新文件(“voting_2008.txt”); 扫描仪sc=新扫描仪(选择); 字符串[]状态
- 修改程序,以便显示每个州的总投票数
(即,在每一行中添加一列,将所有投票的总票数相加。) (每个州的候选人) - 修改程序,以便显示每个候选人的总票数(即,添加最后一行,显示所有三列投票的总票数)
publicstaticvoidmain(字符串[]args)引发IOException { //此处的TODO代码应用程序逻辑 文件选择=新文件(“voting_2008.txt”); 扫描仪sc=新扫描仪(选择); 字符串[]状态=新字符串[51]; int[][]票=新int[51][4]; int[]Totalbystate=新的int[vots.length]; 对于(int s=0;s<51;s++) { states[s]=sc.nextLine(); } 对于(int c=0;c<3;c++) { 对于(int s=0;s<51;s++) { 票数[s][c]=sc.nextInt(); } } 格式化程序fmt=新格式化程序(); 格式(“%20s%12s%12s%12s%21s”、“州”、“奥巴马”、“麦凯恩”、“其他”、“各州合计”); 系统输出打印项次(fmt); 对于(int s=0;s<51;s++) { fmt=新格式化程序(); 格式(“%20s”,表示[s]); 系统输出打印(fmt); 对于(int c=0;c<3;c++) { fmt=新格式化程序(); 格式(“%12d”,投票[s][c]); 系统输出打印(fmt); } 整数和=0; for(int row=0;row
int[] values = new int[10];
new Formatter().format("%21d", values);
现在还不清楚您希望它做什么,但我怀疑您实际上想做以下事情:
// Please change your variable names to follow Java conventions
fmt = new Formatter(System.out);
for (int value : Totalbystate) {
fmt.format("%21d", value);
}
或者,指定一个格式字符串,例如%21d%21d%21d%21d%21d”
(等),并传入一个整数[]
,而不是整数[]
此外,您应该修复程序的缩进-目前它不必要地令人困惑。问题与求和无关,而与格式有关。仅此代码将演示相同的问题:
int[] values = new int[10];
new Formatter().format("%21d", values);
现在还不清楚您希望它做什么,但我怀疑您实际上想做以下事情:
// Please change your variable names to follow Java conventions
fmt = new Formatter(System.out);
for (int value : Totalbystate) {
fmt.format("%21d", value);
}
或者,指定一个格式字符串,例如%21d%21d%21d%21d%21d”
(等),并传入一个整数[]
,而不是整数[]
此外,您应该修复程序的缩进-它目前不必要地令人困惑。Umm..那么,问题是什么?总和不起作用。当我编译时,线程“main”java.util.IllegalFormatConversionException:d!中出现错误异常[I Alabama 813479 1266546 19794 java.util.Formatter$FormattSpecifier.failConversion(Formatter.java:4045)java.util.Formatter$FormattSpecifier.printInteger(Formatter.java:2748)java.util.Formatter$FormattSpecifier.print(Formatter.java:2702)java.util.Formatter.Formatter.java:2488)在small_program_07.small_program_07.main(small_program_07.java:69)的java.util.Formatter.format(Formatter.java:2423)中,java结果:1@user1663414当前位置查看异常的确切含义。它与求和本身无关。嗯..那么,问题是什么?求和不起作用。当我编译时,线程中出现错误异常“main”java.util.IllegalFormatConversionException:d!=[I Alabama 813479 1266546 19794在java.util.Formatter$FormatSpecifier.failConversion(Formatter.java:4045)在java.util.Formatter$FormatSpecifier.printInteger(Formatter.java:2748)在java.util.Formatter$FormatSpecifier.print(Formatter.java:2702)在java在java.util.Formatter.format(Formatter.java:2488)在java.util.Formatter.format(Formatter.java:2423)在small_program_07.small_program_07.main(small_program_07.java:69)在java结果:1@user1663414当前位置请看异常的确切含义。它与求和本身无关。