Ich möchte in der Methode calculate() die Methode getArray ausführen.
Er schreibt mir in Zeile24 bei: getArray(arr[arr]); immer found char[], required: int.
Versteh ich aber nicht, ich will ja das arr Array übergeben. Mit getArray(arr[arr.length]) hab ichs auch schon probiert. Geht aber auch nicht.
Hat sich erledigt
Code
public class String2{
String internal;
int basis;
String2(String in){
this.internal = in;
}
public int toInteger(int basis) {
if ( basis >= 2 && basis <= 16){
this.basis = basis;
return calculate();
}
return -1;
}
public int calculate(){
char[] arr = internal.toCharArray();
char[] temp1 = new char[arr.length];
int temp = 0;
int result = 0;
getArray(arr[arr]);
for (int i = 0; i < temp1.length; i++){
int ergebnis = getCalculate(temp1[i], i);
if (ergebnis == -1){
result = -1;
break;
}
result += ergebnis;
}
return result;
}
char getArray(char[] a){
char[] b = null;
int i = 0;
for (i = a.length-1; i >= 0; i--) {
b[i] = a[a.length-i-1];
}
return b[i];
}
int getCalculate(char value, int power){
int charAsInt = Character.digit(value,this.basis);
if (charAsInt == -1){
System.out.println("Nicht darstellbar");
return -1;
}
System.out.println("charasint: "+charAsInt+", value: "+value+" ,basis: "+ basis + " , power: " + power+ ", math pow: " + (int)Math.pow(basis,power));
return charAsInt * (int)Math.pow(basis,power);
}
}
Alles anzeigen