package com.cp.javapractice;
import java.util.ArrayList;
import java.util.Scanner;
public class Cp {
public static void main(String args[]) {
ArrayList al = new ArrayList();
Scanner s = new Scanner(System.in);
String str = null;
str = new String();
System.out.println("Enter the string which you want to remove the duplicates");
str = s.nextLine();
String arr[] = str.split(" ");
for (int k = 0; k < arr.length; k++) {
al.add(arr[k]);
}
try {
for (int i = 0; i < arr.length; i++) {
for (int j = i + 1; j < arr.length; j++) {
if (arr[i].equalsIgnoreCase(arr[j])) {
al.remove(j);
}
}
}
System.out.println(al);
}
catch (Exception e) {
System.out.println(e);
}
}
}
私は特に指定された文字列をユーザーから置き換えようとしています。だから、splitメソッドを使って与えられた文字列をスペースで分割し、配列とarraylistに入れます。whileループ実行中のIndexOutOfBoundsException - Java
配列を繰り返して条件が同じであることを確認した後、ArrayListでそれを削除しました。しかし、それを削除すると、インデックスの境界外の例外が表示されます。
このコードは小さな配列サイズで動作しますが、多数の配列サイズを指定すると例外を示します。 配列サイズが13ワードの文字列を与えている間に問題が発生しています。
ここに私のフルコードです。
! – jdigital
重要な情報を省略しました。例外スタックトレース(完全)とコード内のどのステートメントが例外をスローするかの指示。不足している情報を含めるためにあなたの質問を編集してください –
[IndexOutOfBoundsException]の重複している可能性があります(http://stackoverflow.com/questions/4269153/indexoutofboundsexception) – mx0