import java.lang.*;
class godmos{
public static String deleter(StringBuffer s, int pos)
{
return s.substring(0,pos) + s.substring(pos + 1);
}
public String str1 = " 5+7*9/9 ";
StringBuffer str0 = new StringBuffer(str1);
public static StringBuffer calculate (StringBuffer str)
{if(str.indexOf("/")!=-1)
{ int a1 = str.indexOf("/");
int a2 = a1+1;
int a3 = a1-1;
double tmp1 = Double.parseDouble(Character.toString(str.charAt(a2)));
double tmp2 = Double.parseDouble(Character.toString(str.charAt(a3)));
double tmp3=tmp1/tmp2;
deleter(str,a1);
deleter(str,a2);
deleter(str,a3);
str.insert(a1,tmp3);
}
return str;
}
StringBuffer f1 = calculate(str0);
public static void main (String[] args) {
godmos gm = new godmos();
System.out.print(gm.f1);
}
}
Andry KIT
5 уровень
как зделать так ,чтоб deleter удалял символ,в данний момент он его не удаляет в принципе, как удалить любой символ?
Обсуждается
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia Volkova Java Developer в DXC Master
18 августа 2021, 21:03
Почему не удаляет? Удаляет. И возвращает строку без него.
Просто ты с ней ничего не делаешь.
0
Andry KIT
19 августа 2021, 19:11
простите.я не понял что вы имели веду ,я же взврощаю измененную строку.
можете пожалуйста показать код которий поможет мне с проблемой
0
Ksenia Volkova Java Developer в DXC Master
19 августа 2021, 20:09
Возвращаешь - и? куда девается то, что ты возвращаешь?
0
Andry KIT
19 августа 2021, 20:46
ну смотрите
в функции calculate есть атрибут str
с помощью функции deleter я его изменяю
и его в конце возврощаю
и его в конце я вивожу на екран
и в нем почему то не удаляеться символи
я не изменяю str1, я изменяю str которий являеться копией str1
прошу . обьясните что я делаю не так
0
Ksenia Volkova Java Developer в DXC Master
19 августа 2021, 21:03
Ты не изменяешь str.
Твой метод deleter не изменяет переданный ему объект StringBuffer. Он создает на его основе новую строку (без одного символа) и ее возвращает.
0