子串方法

我必须编写这个程序来输出名字的第一个字母和姓氏的前五个字母以及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(); } } 

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)

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

在此处输入图像描述