Как мне создать генератор имен? - PullRequest
2 голосов
/ 27 мая 2011

Я создаю программу, которая запрашивает имя и фамилию, а затем печатает строку, состоящую из первой буквы имени пользователя, за которой следуют первые пять символов фамилии пользователя, за которыми следует случайное число в диапазонеОт 10 до 99.

Я знаю, как запросить имя и найти случайное число, но я не уверен, как

"напечатать строку, состоящую из первой буквы имении первые пять букв фамилии. "

Кто-нибудь может мне помочь?Я очень элементарный программист на Java.

Так что я действительно близок к тому, чтобы закончить это, но в строке 55 говорится, что это «незаконное начало выражения», и я не могу понять это.Вот мой код, извините, я знаю, что это беспорядок:

Random generator = new Random();

int num1;

num1 = generator.nextInt(10-99);

строка 55: public String подстрока; <<< <pre>String result; System.out.println("Result:" + (beginIndex) + (firstname.substring(0,1) + lastname. substring (0,5)) + (num1) );

Ответы [ 6 ]

8 голосов
/ 27 мая 2011

Мне кажется, домашнее задание, поэтому я дам подсказку. ищите метод substring () и charAt () для первой части и Случайный класс для второй.

1 голос
/ 27 мая 2011

Я разработчик .NET, поэтому не могу помочь вам с синтаксисом, но вам нужно получить первый символ имени, обычно доступный через индексатор - firstName.charAt (0) и подстрокувторой, который варьируется от первого символа (порядковый номер 0) до 5-го символа (порядковый номер 4), вероятно, что-то вроде lastName.substring (0, 4);и объединить эти две строки -

concatenatedName = firstName.charAt(0) + lastName.substring(0, 4);
0 голосов
/ 16 февраля 2016

Видите, как это просто?Я дал 4 простых имени, которые можно заменить словами и тому подобным.«4» в коде представляет количество имен в строке.Это так просто, как только может.А для тех, кто хочет еще короче (все, что я сделал, это уменьшил расстояние):

0 голосов
/ 27 мая 2011

Вам не хватает закрывающих скобок для println.

Я бы порекомендовал убрать все круглые скобки вокруг строк, которые затрудняют чтение.

System.out.println("Result:" + beginIndex + firstname.substring(0,1) + lastname.substring(0,5) + num1 );

А что будет, если пользователь введет фамилию, состоящую всего из 4 символов?

0 голосов
/ 27 мая 2011

Нечто подобное будет делать

import java.lang.String;
import java.io.*;
import java.util.Random;


class Name {
    public static void main(String args[]) {

        Random rnd = new Random(); // Initialize number generator

        String firstname = "Jessica"; // Initialize the strings
        String lastname = "Craig";

        String result; // We'll be building on this string

        // We'll take the first character in the first name
        result = Character.toString(firstname.charAt(0)); // First char

        if (lastname.length() > 5)
            result += lastname.substring(0,5);
        else
            result += lastname; // You did not specify what to do, if the name is shorter than 5 chars

        result += Integer.toString(rnd.nextInt(99));


        System.out.println(result);

    }
}
0 голосов
/ 27 мая 2011

Взгляните на String.substring ()

...