Nie wiem dlaczego jak wpisuje wartość do programu 0101 to otrzymam PP (działa dobrze) gdy nagle zmienię na 1111 to otrzymuje błąd: "java.lang.ArrayIndexOutOfBoundsException" a powinienem otrzymać II. Proszę o jakieś wskazówki w czym tkwi błąd.
import java.util.Scanner;
import java.util.Arrays;
import java.util.ArrayList;
public class dekod{
public static void main(String args[]){
Scanner odczyt= new Scanner(System.in);
String liczba = odczyt.nextLine();
char[] napis=liczba.toCharArray();
int n= napis.length;
int j=0;
ArrayList<String> wynik = new ArrayList<String>();
while(j<=n-1){
if(napis[j] =='1' && napis[j+1] =='1')
{wynik.add("I");
j=j+2;
}
if(napis[j] =='0' && napis[j+1] =='1')
{wynik.add("P");
j=j+2;
}
}
for(String s:wynik){
System.out.print(s);
}
}
}
dodanie znacznika <code class="java">
- @furious programming