题目。。
编写一个程序,要求用户分别输入名字和姓,然后打印输出一个字符串,该字符串有用户名字的首字母加不超过前5个字母的姓及一个10~99的随机数组成。类似的算法有时也用于生成计算机新用户帐号。
24小时之内答出来来的给分。。过时不给分!!!:-)我是初学者,简单的问题
编写一个程序,要求用户分别输入名字和姓,然后打印输出一个字符串,该字符串有用户名字的首字母加不超过前5个字母的姓及一个10~99的随机数组成。类似的算法有时也用于生成计算机新用户帐号。
24小时之内答出来来的给分。。过时不给分!!!:-)我是初学者,简单的问题
import java.util.Random;
import java.util.Scanner;
public class Name {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String firstName;//姓
String lastName;//名
System.out.println("请输入姓:");
firstName = input.next();
System.out.println("请输入名:");
lastName = input.next();
//随机生成一个10-99之间的数
Random rand = new Random();
int num = rand.nextInt(90) + 10;
//用StringBuffer类的对象来存储结果
StringBuffer sb = new StringBuffer();
//取出名的第一个字母,注意数组越界,因为名可能为空
if(lastName.length() > 1) {
sb.append(lastName.substring(0, 1));
} else {
sb.append(lastName);
}
if(firstName.length() > 5) {
sb.append(firstName.substring(0, 5));
} else {
sb.append(firstName);
}
sb.append(num);
System.out.println(sb.toString());
}
}
if(args.length<2){
System.out.println("请输入两个参数。");
System.exit(0);
}
StringBuffer sb = new StringBuffer(args[0]);
String subName=null;
try{
subName=args[1].substring(0, 5);
}catch(StringIndexOutOfBoundsException e){
subName=args[1];
}
sb.append(subName).append(new Random().nextInt(90)+10);
System.out.println(sb);
}
是这样的吧?