子串方法

时间:2013-10-16 16:37:30

标签: java

我必须编写这个程序来输出名字的第一个字母和姓氏的前五个字母以及10-99的随机数字。它工作但我认为substring方法从0开始并从那里开始,因此substring(0,0)将仅包括第一个字母,同样substring(0,4)将包括0 1 2 3 4个字母用于前5个或者它不包括输出中的最终数字?

import java.util.Scanner;
import java.util.Random;

public class NameModifier
{

public static void main (String[] args)
    {

    String namefirst;
    String namelast;
    Random generator = new Random();
    int num;

    num = generator.nextInt(99) + 10;

    Scanner scan = new Scanner (System.in);

    //prompts user
    System.out.print ("Enter your first name: ");
    namefirst = scan.nextLine();    
    System.out.print ("Enter your last name: ");    
    namelast = scan.nextLine();
    System.out.println("Your entered: " + namefirst + " " + namelast);

    //outputs modified username possibility
    System.out.println("Here is a random username for you: ");
    System.out.print (namefirst.substring(0, 1));
    System.out.print (namelast.substring(0,5));
    System.out.print (num);

    scan.close();

    }
}

2 个答案:

答案 0 :(得分:2)

Java的子串输入

public String substring(int beginIndex,int endIndex)

beginIndex - the beginning index, inclusive.
endIndex - the ending index, exclusive.

注意独家。 substring(0,1)将返回一个字符串,包括字符0,但不包括字符1。

来源:http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#substring(int,int)

答案 1 :(得分:2)

我希望你能用这个例子更好地理解:

enter image description here