#java #string #methods #replace
#java #строка #методы #заменить
Вопрос:
Если задана строка, такая как «doodle», как я могу заменить «e» на следующие вопросы.
Какой символ вы хотите заменить? Чем вы хотите его заменить? Какое e вы хотите заменить?
Пользователь введет 1 для окончательного ответа, и программа вернет «doodl_», где _ — это буква, на которую они ее заменили.
Условие заключается в том, что вы можете использовать только методы length() , charAt() , substring и equals
if(command1.equalsIgnoreCase(«заменить одиночный»)) {
System.out.println("Enter the character to replace");
String replace1=keyboard.nextLine().substring(0,1);
char replace2=replace1.charAt(0);
System.out.println("Enter the new character");
String replace3= keyboard.nextLine().substring(0,1);
char replace4= replace3.charAt(0);
System.out.println("Which " replace2 " would you like to replace?");
int position=keyboard.nextInt();
int i=0;
for(i=0;i<input.length();i )
{
char ichar=input.charAt(i);
if(ichar==replace2)
{
if(position==i)
{
input=input.substring(0,i) replace4 input.substring(i 1);
}
>
Это текущий код, который может заменить только букву, учитывая, что индекс буквы также является местоположением n-й буквы для замены.
Ответ №1:
вы можете вычитать 1 из позиции каждый раз, когда видите символ, и как только ваша позиция равна 0, вы нашли свою позицию:
for(i=0;i<input.length();i )
{
char ichar=input.charAt(i);
if(ichar==replace2)
{
position--;
if(position == 0)
{
input=input.substring(0,i) replace4 input.substring(i 1);
}
}
}