下面是两个数组,UserName()   和   Score()  
  现在要把每个用户的的分之和   给每一位用户,  
  即重新生成两个新的数组,  
  比如结果因该是:  
                xing   共得分   xxx  
                xingworld   共得分   xxx  
                Richardmax   得分   xxx  
   
  用尽量简练的语言怎么做,谢谢! 二个数组别为:
UserName="xing,   xingworld,   xingworld,   xingworld,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   xing,   Richardmax,   xing,   xing,   xing,   xing,   xing,   Richardmax,   Richardmax,   Richardmax,   Richardmax,   Richardmax,   Richardmax,   Richardmax"  
   
  WinScore="1,   2,   3,   4,   5,   6,   7,   8,   9,   10,   11,   12,   13,   14,   15,   16,   17,   18,   19,   20,   21,   22,   23,   24,   25,   26,   27,   28,   29,   30,   31,   32,   33,   34,   35,   36"用java类来实现或javascript都可?

解决方案 »

  1.   

    用HashMap存储,key为用户名,value为得分
    将上述数据遍历一遍后即可
      

  2.   

    我给你写了一个方法 你可以试一下,add()的第一个参数是姓名的数组,第二个参数是分数的数组;package test;public class SplitAdd {
      public SplitAdd() {
      }
      public String[] userName;  //新数组存储三个人的姓名
      public int[] winScore;   //新数组存储三个人的总成绩
      
      public void add(String[] user,int[] score){
        int xingScore=0;
        int xwScore=0;
        int rcmScore=0;
        for(int i=0;i<user.length;i++){
           String name = user[i];
           if(name.equals("xing")){
             xingScore = xingScore + score[i];
           }
           if(name.equals("xingworld")){
             xwScore = xwScore + score[i];
           }
           if(name.equals("Richardmax")){
             rcmScore = rcmScore + score[i];
           }
        }
        //为新数组添加三个人的名字
        this.userName[0] = "xing";
        this.userName[1] = "xingworld";
        this.userName[2] = "Richardmax";
        //为新数组添加三个人的总成绩
        this.winScore[0] = xingScore;
        this.winScore[1] = xwScore;
        this.winScore[2] = rcmScore;
        
      }
    }
      

  3.   

    你可以在这个类里 添加你自己的main()函数,我没给你加,你加上自己测试一下吧,祝你成功!
      

  4.   

    HashtableTest.java
    ===================================
    import java.util.Enumeration;
    import java.util.Hashtable;public class HashtableTest {
        public HashtableTest() {
            
        }
        
        public static void main(String[] args){
            String UserName="xing,xingworld,xingworld,xingworld,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,xing,Richardmax,xing,xing,xing,xing,xing,Richardmax,Richardmax,Richardmax,Richardmax,Richardmax,Richardmax,Richardmax";
            String  WinScore="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36";
            //先将字符串分割,放到数组里去
            String[] userNames = UserName.split(",");
            String[] strWinScores = WinScore.split(",");
            int[] winScores = new int[strWinScores.length];
            for(int i = 0;i < strWinScores.length;i++){
                winScores[i] = Integer.parseInt(strWinScores[i]);
            }
            //建立一个Hashtable,userName为key, score为value
            Hashtable hashtable = new Hashtable();
            for(int i = 0; i < userNames.length;i++){
                if( hashtable.containsKey(userNames[i])){
                    int score = ((Integer)hashtable.get(userNames[i])).intValue();
                    score += winScores[i];
                    hashtable.remove(userNames[i]);
                    hashtable.put(userNames[i],new Integer(score));
                } else{
                    hashtable.put(userNames[i],new Integer(winScores[i]));
                }
            }
            
            Enumeration   e=hashtable.keys();
            while(e.hasMoreElements()){
                String key = (String)e.nextElement();
                System.out.print(key + "得分:");
                System.out.println(hashtable.get(key));
            }
        }
        
    }
    -----------------------
    Richardmax得分:255xing得分:402xingworld得分:9
      

  5.   

    public class Test {
    public static void main(String[] args){
    String[] UserName={"xing","xingworld","xingworld","xingworld","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","xing","Richardmax","xing","xing","xing","xing","xing","Richardmax","Richardmax","Richardmax","Richardmax","Richardmax","Richardmax","Richardmax"}; 
       int []WinScore={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36};
    String name1="xing";
    String name2="xingworld";
    String name3="Richardmax";
    int n1Sc=0;//name的成绩
    int n2Sc=0;//name2的成绩
    int n3Sc=0;//name3的成绩
    for(int i=0;i<UserName.length;i++){
    if(UserName[i]==name1){
    n1Sc+=WinScore[i];
    }
    if(UserName[i]==name2){
    n2Sc+=WinScore[i];
    }
    if(UserName[i]==name3){
    n3Sc+=WinScore[i];
    }
    }
    System.out.println(name1+"共得分"+n1Sc);
    System.out.println(name2+"共得分"+n2Sc);
    System.out.println(name3+"共得分"+n3Sc);
    }
    }
      

  6.   

    public  class CalculateScore{
    public static void main(String[] args) {
    String[] userName = { "xing", "xingworld", "xingworld", "xingworld", "xing", "xing", "xing", "xing", "xing", "xing",
    "xing", "xing", "xing", "xing", "xing", "xing", "xing", "xing", "xing", "xing", "xing", "xing", "xing",
    "Richardmax", "xing", "xing", "xing", "xing", "xing", "Richardmax", "Richardmax", "Richardmax", "Richardmax",
    "Richardmax", "Richardmax", "Richardmax" };
    float[] winScore = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
    29, 30, 31, 32, 33, 34, 35, 36 };

    Map result = new HashMap();
    for (int i = 0; i < winScore.length; i++) {
    Float total = (Float) result.get(userName[i]);
    if (total == null) {
    total = new Float(0);
    }
    total = new Float(total.floatValue() + winScore[i]);

    result.put(userName[i], total);
    }

    Set keySet = result.keySet();
    for (Iterator iter = keySet.iterator(); iter.hasNext();) {
    String name = (String) iter.next();
    System.out.println("User " + name + "wins " + result.get(name) + " points!");
    }
    }
    }
      

  7.   

    谢谢dyw31415926(守护) ,谢谢其它同志!