繁体   English   中英

如何创建名称生成器?

[英]How do I create a name generator?

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

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

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

谁能帮我? 我是一个非常初级的 Java 程序员。

所以我真的很接近完成这个,但它一直在说第 55 行的“非法表达开始”,我无法弄清楚。 这是我的代码,对不起,我知道这是一团糟:

Random generator = new Random();

int num1;

num1 = generator.nextInt(10-99);

第 55 行:公共字符串 substring; <<<

String result;


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

对我来说似乎是作业,所以我会给出提示。 第一部分查找方法substring()charAt() ,第二部分查找 Random class

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

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

看看有多容易? 我给了 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)]); }}

这样的事情会做

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

    }
}

您缺少 println 的右括号。

我建议删除字符串 concats 周围的所有括号,它们只会使其难以阅读。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM