UpperCase проблема, используя IndexOf - PullRequest
0 голосов
/ 31 января 2011

Введите строку текста. Без знаков препинания, пожалуйста.

Ява - это язык.

Я перефразировал эту строку следующим образом:

Является ли язык Java.

Попытка:

 int x;
 String  sentence, first;

 System.out.println("\nEnter a line of text. No punctuation please.");

 Scanner keyboard = new Scanner (System.in);

 sentence=keyboard.nextLine();

   x = sentence.indexOf(" ");
 first= sentence.substring(0,x);
 second=sentence.substring(0,1)
 second=second.toUpperCase();  
 System.out.println("I have rephrased that line to read:");
 System.out.println(second+sentence.substring(x+1)+" "+first);

Выход:

Введите строку текста. Без знаков препинания, пожалуйста.

что происходит

Я перефразировал эту строку следующим образом: // Она должна гласить «Что происходит?»

Что происходит

P.S. - Мне нужно сделать заглавную букву "i". Как я могу заставить "second.substring (0,1)" читать символ "i"? Как и предполагалось, я попытался выяснить, как разборать письмо и объединить его с заглавной буквы, но я не уверен.

Людям, которые набрасываются на меня за то, что я не делаю это самостоятельно. Я сделал несколько попыток и прочитал книгу. Это не помогло. Я должен был спросить профессора, чтобы он дал мне преимущество, но все еще недостаточно. Конечно, я хочу это понять. Не все понимают одинаково. Лично мне нужны примеры и подробные объяснения, чтобы понять.

Ответы [ 3 ]

2 голосов
/ 31 января 2011

Изменение:

   first= sentence.substring(0,4);  

Кому:

   first= sentence.substring(0,x);

Затем добавьте:

   sentence = sentence.substring(x+1,sentence.length());
1 голос
/ 31 января 2011

Попробуйте:

first = sentence.substring (0, x);
// other stuff
System.out.println (sentence.substring (x + 1) + " " + first);
0 голосов
/ 31 января 2011

TL; DR: используйте другой вызов substring, чтобы убрать первую часть. См. документацию по классу String , а также Управление символами в строке


Ваш код не работает вообще. Вы сохраняете в x позицию первого пробела, но не используете ее, она должна быть sentence.substring(0, x).

Для предложения: Как дела . В first вы сохраните первое слово: как

Тогда вам следует удалить из sentence первое слово примерно так: sentence = sentence.substring(x+1). Теперь предложение будет: Вы

После этого просто объедините оба:

String newSentence = sentence + " " + first;

И там вы сохранили в переменной newSentence: как вы

Боже, благослови!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...