java如何循环输出数组?

如下面代码所示,我想让他跟string[]vertices={"C01","C02","C03","C04","C05",...};的功能一样,但是下面的这个程序好像不合... 如下面代码所示,我想让他跟string[] vertices={"C01","C02","C03","C04","C05",...};的功能一样,但是下面的这个程序好像不合适,大家帮我看一下,谢谢

Scanner reader=new Scanner(System.in);
int Input=reader.nextInt();
for(int n=1;n<=Input;n++){
vertices[n-1]= "C"+"n.toString()"; //带权有向图的顶点集合
}
展开
 我来答
泪之梦幻
推荐于2017-09-04 · TA获得超过2211个赞
知道小有建树答主
回答量:304
采纳率:100%
帮助的人:55.6万
展开全部
有两种方法:
1. 使用三层循环遍历多维数组
public class Ransack {
public static void main(String[] args) {
int array[][][] = new int[][][]{ // 创建并初始化数组
{ { 1, 2, 3 }, { 4, 5, 6 } },
{ { 7, 8, 9 }, { 10, 11, 12 } },
{ { 13, 14, 15 }, { 16, 17, 18 } }
};
array[1][0][0] = 97; // 改变指定数组元素
for (int i = 0; i < array.length; i++) { // 遍历数组
for (int j = 0; j < array[0].length; j++) {
for (int k = 0; k < array[0][0].length; k++) {
System.out.print(array[i][j][k] + "\t");
}
System.out.println(); // 输出一维数组后换行
}
}
}

2.使用foreach 遍历三维数组
public class ForEachRansack {
public static void main(String[] args) {
int array[][][] = new int[][][]{ // 创建并初始化数组
{ { 1, 2, 3 }, { 4, 5, 6 } },
{ { 7, 8, 9 }, { 10, 11, 12 } },
{ { 13, 14, 15 }, { 16, 17, 18 } }
};
for (int[][] is : array) { // 遍历数组
for (int[] is2 : is) {
for (int i : is2) {
System.out.print(i + "\t");
}
System.out.println(); // 输出一维数组后换行
}
}
}
}
路图元
推荐于2017-09-28 · TA获得超过255个赞
知道小有建树答主
回答量:368
采纳率:0%
帮助的人:271万
展开全部
Scanner reader=new Scanner(System.in);
int Input=reader.nextInt();
for(int n=1;n<=Input;n++){
vertices[n-1]= "C"+n.toString(); //改成这个试试 //带权有向图的顶点集合
}
更多追问追答
追问
也是不对的,好像是数组下标溢出,但是我从n-1,n,n+1都试过了,还是不行啊
追答
String vertices[] = new String[10];
Scanner reader=new Scanner(System.in);
int Input=reader.nextInt();
for(int n=1;n<=Input;n++){
Integer n1 = new Integer(n);
vertices[n-1]= "C"+n1.toString(); //改成这个试试 //带权有向图的顶点集合
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7c5f967
2011-07-05 · TA获得超过324个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:184万
展开全部
循环内代码由
vertices[n-1]= "C"+"n.toString()";
改为:
DecimalFormat df=new DecimalFormat("00");
vertices[n-1]= "C"+df.format(n);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qia1013
2011-07-08 · TA获得超过203个赞
知道小有建树答主
回答量:514
采纳率:0%
帮助的人:214万
展开全部
你的for循环从n=1开始,数组下标是从0开始,所以你的n-1没错,但是n<=input这里就错了,这里的n只能小于input 等于input的话下标就越界了、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lc19920606
2011-07-13 · TA获得超过561个赞
知道答主
回答量:338
采纳率:100%
帮助的人:287万
展开全部
刚刚做出来,我运行没问题
package javaSE_bankSystem;
import java.util.*;
public class Test2 {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入数字:");
int number = input.nextInt();

String[] vertices = new String[number];
for(int i=0;i<number;i++){
if(i<9){
vertices[i]= "C0"+(i+1);
}else{
vertices[i]= "C"+(i+1);
}
System.out.println(vertices[i]);
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式