2016-10-01 5 views
-3

У меня есть уравнение a + b-c * d. Я читаю значения a, b, c, d из другого файла, я их храню в двойном массиве.как заменить значения для символов в уравнении

Как заменить a/b/c/d на числовое значение из массива? Я попытался это,

String l2; //getting the equation string in this from other part of the code. 
//assume a+b-c*d 

Double[] secondOperators = new Double[4]; 
public String getSecondString() 
{ 
    l2 = l2.replace("a",toString(secondOperators[0])); 
    l2 = l2.replace("b",toString(secondOperators[1])); 
    l2 = l2.replace("c",toString(secondOperators[2])); 
    l2 = l2.replace("d",toString(secondOperators[3])); 
    return l2;  
} 

В результате было время компиляции ошибки

ошибка: Метод ToString в классе Object не может быть применена к данным видам; не

l2 = l2.replace("a",toString(secondOperators[0])); 
         ^

необходимые: нет аргументов

найдено: Double

Причина: фактические и формальные списки аргументов различаются по длине

+2

и результат был ...? –

+0

@JBNizet редактировали вопрос с ошибкой –

ответ

3

Использование String.valueOf(secondOperators[0]) вместо toString(secondOperators[0])

Edit:

public static String getSecondString() 
{ 
    String l2="a+b-c*d"; 
    Double[] secondOperators = {22.03,334.34,34.57,231.98}; 
    l2 = l2.replace("a",String.valueOf(secondOperators[0])); 
    l2 = l2.replace("b",String.valueOf(secondOperators[1])); 
    l2 = l2.replace("c",String.valueOf(secondOperators[2])); 
    l2 = l2.replace("d",String.valueOf(secondOperators[3])); 
    return l2;  
} 
+0

нет подходящего метода найдено для замены (символ, строка) \t \t l1 = l1.replace ('а', String.valueOf (firstOperators [1])); \t \t^ метода String.Replace (символ, символ) не применяется (аргумент несоответствия; строка не может быть преобразована в угле) метод String.Replace (CharSequence, CharSequence) не применяется (аргумент несоответствия ; char не может быть преобразован в CharSequence) –

+0

Почему вы изменили свой '' a '' с '' a'', вы не можете использовать 'replace' с' one char' и 'one string'. Прочитайте 'String JavaDoc' и получите больше идей. Посмотрите мой отредактированный ответ, Его работа. –

+0

спасибо. и PLS вы можете выдвинуть мой вопрос. –

 Смежные вопросы

  • Нет связанных вопросов^_^