我的代碼似乎有問題,它是查找重複的數字序列。我已將(?)double轉換爲字符串,因爲我得到錯誤不可達語句。 (我猜這有助於尋找我現在得到錯誤的原因?)。字符串索引超出範圍(重複序列的數字)
每當我運行它,它會很好,直到我完成輸入N和D.
它會說「異常線程‘main’java.lang.StringIndexOutOfBoundsException:字符串索引超出範圍:3」
這裏是我下面的代碼:
import java.util.*;
public class RepeatingSequence{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.print("Enter N,D: ");
int numerator = in.nextInt();
int denominator = in.nextInt();
double quotient = numerator/denominator;
String number = "" + quotient;
char n = number.charAt(0);
int j = 1;
int z = 0;
String output = "";
char[] index = number.toCharArray();
for (int i = 2; number.charAt(j) != number.charAt(i); i++){
index[z] = number.charAt(z);
index[j] = number.charAt(j);
index[i] = number.charAt(i);
output = output + index[i];
if (index[i] != index[z]){
System.out.print(index[z] + ".(" + index[j] + output + ")");
}
}
}
}
可以嘗試 串號= Integer.toString(q uotient); – vembutech 2014-12-03 13:33:51
所以你想找到小數點後是否有重複的數字? – brso05 2014-12-03 13:37:56
@vembutech - 也許你的意思是雙?如果我無論如何都得到錯誤。 – 2014-12-03 13:40:12