1.接受由用户传来的多个String类型的参数, 首先将它们打印在屏幕上, 每个参数一行. 如果调用者没有传入任何参数, 则不进行下面的处理. 
2.对这些参数进行处理, 具体的处理方式未定. 
3.将2得到的处理结果打印在屏幕上. 
4.目前第2步中需要完成下面三种处理: 
4.1将所有的String参数连接成一个字符串, 中间以逗号(”,”)分隔. 
4.2将第一个和最后一个字符串的所有小写字母转换成大写, 并连接起来, 中间没有分隔符. (如果只传入一个参数, 则只转换它) 
4.3在第2个到最后一个字符串中, 查找第一个字符串. 并将查找的结果以下面的形式输出, 每个占一行: (如果只传入一个参数, 则不进行输出) 
[参数的索引]: 查找的结果 
比如找到的情况: 
3: Founded “String1” 
没找到的情况: 
4: Not Founded “String1” 
谢谢了!!

解决方案 »

  1.   


    import java.util.Arrays;
    public class RegexTest {
    public static void main(String[] args){
    System.out.println("不传入参数");
    print();
    System.out.println("传入一个参数");
    print("a");
    System.out.println("传入多个参数");
    print("a","b","c","d");
    System.out.println("传入多个参数,并且第2个参数在后面参数中存在");
    print("a","b","bc","bd","ee");
      }
    public static void print(String...strings){
    int length=strings.length;
    //传入参数处理,不传入不处理
    if(length>0){
    //4.1将所有的String参数连接成一个字符串, 中间以逗号(”,”)分隔. 
    if(length>1){
    String strJoin=Arrays.toString(strings);
    String newStr=strJoin.replaceAll("\\[|\\]|\\s", "");
    System.out.println(newStr);
    }
    //4.2将第一个和最后一个字符串的所有小写字母转换成大写, 并连接起来, 中间没有分隔符. (如果只传入一个参数, 则只转换它) 
            if(length>1){
             String twoAndLastStr=(strings[0]+strings[length-1]).toUpperCase();
             System.out.println(twoAndLastStr);
            }
            //4.3在第2个到最后一个字符串中, 查找第一个字符串. 并将查找的结果以下面的形式输出, 每个占一行: (如果只传入一个参数, 则不进行输出) 
            if(length>1){
             String twoStr=strings[1];
             for(int i=1;i<length;i++){
             int count=i+1;
             if(strings[i].contains(twoStr))
             System.out.println(count+": Founded  "+strings[i]);
             else
             System.out.println(count+": Not Founded  "+strings[i]);
             }
            }
    }
    }
    }
      

  2.   

     斑竹应该奖励一楼的10000分,有了一楼的同学,CSDN才能发扬光大啊,:)~
      

  3.   


    LZ 发帖 是9.30
    1L 是 10.45发的贴!
      

  4.   

    1L的答案没有满足LZ的第一个要求啊    LZ是想让用户自己随意输入一个字符串,然后吧输入的字符串打印出来,在进行处理,print(String...String)这个方法没太细看,但是前面应该用BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)) 先读出,然后在对其处理 或者用Scanner 也可以 
      

  5.   

    同学们 main的那个参数干嘛用了啊
    那个args数组就是屏幕输入的内容