Вопрос относительно использования подстроки и не вычитать 1 - PullRequest
0 голосов
/ 09 октября 2019

Создать программу, которая печатает первую часть слова. Программа запрашивает у пользователя слово и длину первой части. Используйте метод подстроки в вашей программе. https://puu.sh/EqqmC/231457edec.png

Приведенный ниже код дает правильный ответ, но я хотел бы знать, почему нет необходимости вычитать 1 из длины, чтобы получить слово с правильным числом символов. т.е. если строковое слово равно «example», а длина int равно 4, возвращаемое значение равно «exam», но если интерпретируется, начиная с 0, результат должен быть «examp»

return text.substring (0,длина);

import java.util.Scanner;

public class FirstPart {

    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        System.out.println("Type a word: ");
        String word = reader.nextLine();
        System.out.println("Length of the first part: ");
        int length = Integer.parseInt(reader.nextLine());
        System.out.println("Result: " + firstPart(word, length));
    }
    // prints the first part of the word
    public static String firstPart(String text, int length) {
       return text.substring(0, length);
    }
}

, если строковое слово равно «example», а длина int равно 4, возвращаемое значение равно «exam»

1 Ответ

0 голосов
/ 09 октября 2019

Конечный индекс не входит в базовый текст text.ubstring (0, длина) от 0 до длина-1

...