Мой код:Печать массивов, настройка массивы
import javax.swing.JOptionPane;
public class IT106_Playlist {
public static void main(String[] args){
final int MAX_SONGS = 106;
int totalDuration = 0;
int numSongs=0;
boolean exitVar=false;
int i=0;
String[] songTitles = new String[MAX_SONGS];
int[] songLengths = new int[MAX_SONGS];
while(exitVar==false && numSongs<=songTitles.length) {
if (songTitles.equals("-1")){
exitVar=true;
}
do{
songTitles[numSongs] = JOptionPane.showInputDialog(null, "Enter a song name, or type -1 to exit");
if (!songTitles.equals("")){
JOptionPane.showMessageDialog(null, "Error: Please enter a valid song name, or type -1 to exit");
}else{
++numSongs;
}
}while(!songTitles[numSongs].equals(""));
do{
try{
songLengths[numSongs] = Integer.parseInt(JOptionPane.showInputDialog(null, "Enter a song length, e.g. 4, or type -1 to exit"));
}catch (NumberFormatException e){
songLengths[numSongs]=-1;
JOptionPane.showMessageDialog(null, "Error: please enter a valid song length, e.g. 4, or type -1 to exit");
}
totalDuration+=songLengths[numSongs];
/* line 41 */ }while(songLengths[numSongs]=-1);
boolean addMore=true;
while((numSongs<=MAX_SONGS) && (addMore=true)){
JOptionPane.showMessageDialog(null, "Song #" + i + ": "+ songTitles[i] + " length: " + songLengths[i] + "\n");
i++;
if(songTitles[i] ==null){
addMore=false;
}
}
}
}
}
Привет. Я пытаюсь понять, почему у меня ошибка в строке 41 моего кода, говорящей, что int не может быть преобразован в boolean, и я хотел знать, почему и как это исправить.
В принципе, я делаю плейлист. Пользователь вводит имя и длину песни отдельно (два разных массива), а затем, когда они либо достигают максимального количества песен, либо они хотят выйти, они могут сделать это, набрав -1.
Затем пользователь может удалить песни из своего списка воспроизведения, а затем после этого они могут выйти, распечатать все песни и общую продолжительность, а также общее количество песен.
Мы не можем использовать arrayLists или любые методы.
Мой вопрос: 1. моя настройка в порядке, и 2. как мне сделать печать песен после ввода каждого имени песни? Я так близок к тому, чтобы понять это. Спасибо!
Какая линия 41? – RealSkeptic
Правильно укажите свой код. Не делайте этого вручную, пусть ваш редактор (IDE) сделает это за вас (очень легко вручную совершать ошибки). Также опубликуйте полное сообщение об ошибке и укажите на строку, которая вызывает его. – Pshemo
Хорошо, одна секунда, извините – Hello