내 배열에 내 정보를 저장하고 나중에 사용하기 위해 전화하는 방법을 잘못 이해 한 것 같습니다. 다음 코드는 사용자에게 보유한 Cd의 수를 묻고 장르, 아티스트 및 제목을 입력 할 수 있도록하는 것입니다. 그런 다음 하나 이상의 CD가있는 경우 루프로 돌아갑니다. 나는 모든 것이 대부분 정확하다고 믿지만, 내 결과는 옳지 않습니다. 2 Cd 's를 입력 할 때마다 CD 1의 처음 세 항목을 입력 할 수 있지만 CD 2를 인쇄하고 프로그램 끝까지 곧바로 들어갑니다. 1 CD 2 대 CD를2D 배열, 저장 및 호출
수입 java.util.Scanner를 입력 할 때 발생과 함께 코드를 게시 한 -I
;공용 클래스 RiverCDs {
public static void main (String args[])
{
Scanner scnr = new Scanner (System.in);
int cdTotal = 0; // user controlled, controls the number of rows.
int col = 3; // constant that controls array col.
String value = " "; // holds input for array.
int intervals = 1;
String [][] list = new String [cdTotal][col];
System.out.println("The River Catalog:\n");
System.out.print("How many CD's do you have: ");
cdTotal = scnr.nextInt();
do
{
if (cdTotal <= 0) // checking for bad data.
{
System.out.print("Must be a number greater than 0.\n");
System.out.print("How many CD's do you have: ");
cdTotal = scnr.nextInt();
}
}while(cdTotal <= 0); // set up to catch more bad data.
System.out.print("\nFor each CD, enter the genre, then the artist, then the title.\n");
for (int i = 1; i <= cdTotal; i++) // incrementing cd based on user input.
{
System.out.print("\nFor CD " + i + ":\n");
while (intervals <= 3)// condition to exit while loop for next cd.
{
System.out.print("Enter: "); // outside of for-loop to Enter three items.
value = scnr.nextLine();
scnr.next(); // clearing buffer so as to to print a double Enter.
for (int r = 0; r < list.length ; r++) // enters row according to how many cdTotal equals.
{
for (int c = 0; c < list[col].length; c++) // enters col in each row up to three.
{
list[r][c] = value;// storing array in value for later use.
}
}
intervals++; // incrementing so as to break loop and print next cd statement.
}
}
System.out.print("\nHere is your catalog:\n");
System.out.printf("\n%-20s" + "%-20s" + "%-20s\n","Genre","Artist","Title");
System.out.println();
for (int r = 0; r < list.length; r++)// accessing list rows
{
for (int c = 0; c < list[r].length; c++)// accessing list col to pull out individual parts of data.
{
System.out.printf("%-20s","%-20s","%-20s",list[r][c],list[r][c],list[r][c]); // constant to check for data in array-
//not working
//System.out.printf("%-20s","%-20s","%-20s",list[1][0],list[1][1],list[1][2]);
}
}
scnr.close(); // turning off scanner to allow no more input.
}
}
1CD- 강 카탈로그 :
이얼마나 많은 CD의 할 당신이 각 CD의 경우 1
의 입력 장르, 예술가, 그 다음 제목. CD의 경우 1
: 입력 : 상단을 입력 : 캐미 는 입력 : 하바나을 여기
당신의 카탈로그입니다 : :2CD- 강 카탈로그 제목
장르 아티스트
몇 장의 CD가 있습니까? 2
각 CD에 장르를 입력 한 다음 아티스트를 입력 한 다음 제목을 입력하십시오. CD의 경우 1
: 입력 : 상단을 입력 : 캐미 는 입력 : 하바나
을 CD 2의 경우 : 여기
당신의 카탈로그입니다 : 제목
정확히 무엇을 원하는지 물어보십시오. –
얼마나 많은 CD가 있는지 물어 보면 사람이 좋아하는 번호를 입력 할 수 있습니다. 이 코드는 사용자가 장르, 아티스트, 그 다음 제목을 입력 할 수 있도록 허용해야합니다. 첫 번째 반복 후에는 다음 CD로 진행해야합니다. 또한 코드가 멈추고 형식 지정자를 인쇄하는 곳이기도합니다. – Bsmith