如何创建名称生成器?

时间:2011-05-27 16:21:16

标签: java random numbers username

我正在创建一个程序,提示姓名然后打印一个字符串,该字符串由用户名字的第一个字母组成,后跟用户姓氏的前五个字符,后跟一个范围内的随机数字10到99岁。

我知道如何提示输入名称并找到随机数,但我不知道如何

“打印一个由名字的第一个字母组成的字符串,后跟姓氏的前五个字母。”

任何人都可以帮助我吗?我是一名非常基础的Java程序员。

所以我真的很接近完成这个但是它一直在说第55行的“非法表达”,我无法弄明白。这是我的代码,抱歉,我知道这是一团糟:

Random generator = new Random();

int num1;

num1 = generator.nextInt(10-99);

第55行:public String substring; <<<

String result;


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

6 个答案:

答案 0 :(得分:8)

对我来说似乎是功课,所以我会暗示一下。查找第一部分的substring()charAt()方法,以及第二部分的Random class

答案 1 :(得分:1)

我是一名.NET开发人员,所以我无法帮助您解决语法问题,但您需要获取名字的第一个字符,通常可以通过索引器访问 - firstName.charAt(0),以及子字符串第二个从第一个字符(序号0)到第五个字符(序号4),可能类似于lastName.substring(0,4);并连接这两个字符串 -

concatenatedName = firstName.charAt(0) + lastName.substring(0, 4);

答案 2 :(得分:0)

答案 3 :(得分:0)

这样的事情会做

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);

    }
}

答案 4 :(得分:0)

你错过了println的右括号。

我建议删除字符串连接周围的所有括号,它们只是让它难以阅读。

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

如果用户输入的姓氏只有4个字符,会发生什么?

答案 5 :(得分:0)

看看它有多容易?我给了4个简单的名字,可以用文字等代替。代码中的“4”表示String中的名称数。这很简单。对于那些想要它更短的人(我所做的只是减少间距):

import java.util.*; 
public class characters{ 
public static void main(String[] args){
Random generate = new Random(); 
String[] name = {"John", "Marcus", "Susan", "Henry"};
System.out.println("Customer: " + name[generate.nextInt(4)]); }}