日期:2014-05-20  浏览次数:20675 次

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


谢谢了!!


------解决方案--------------------
Java code

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