String code = "ip=dgdsgsdgsg;port=dg;user=dgsgt;password=dsgsgdsgsg;vendor=dsgfsdg";

String ts[] = code.split(";");
for(String m:ts){
String[] mm=m.split("="); 
  System.out.println("-------------------mm[1]"+mm[1]); 
} 输出结果: -------------------mm[1]=dgdsgsdgsg
          -------------------mm[1]=dg
          -------------------mm[1]=dgsgt
          -------------------mm[1]=dsgsgdsgsg
          -------------------mm[1]=dsgfsdg
执行方法:
     try{
      result = service.query(ip, port, userName, passWord, vendor);//这些参数在 String code中
     }catch() {
     }
我请问,我该怎么传参数啊。

解决方案 »

  1.   


    HashMap<String,String> parameterMap = new HashMap<String,String>();
    String code = "ip=dgdsgsdgsg;port=dg;user=dgsgt;password=dsgsgdsgsg;vendor=dsgfsdg"; String ts[] = code.split(";"); for(String m:ts){ 
    String[] mm=m.split("="); 
    parameterMap.put(mm[0],mm[1]);
    }
     
    try{ 
    result = service.query(parameterMap.get("ip"), 
       parameterMap.get("port"), 
       parameterMap.get("user"), 
       parameterMap.get("password"), 
       parameterMap.get("vendor"));//这些参数在 String code中 
    }catch() { 
      

  2.   

    你不是有String[]吗?从String[]里去取。把String[]定义到for循环外面
      

  3.   

    直接传   mm[1]   mm[2]    就行了.            处理两次.. 你这样就没办法了. 因为没分开参数..不停的往mm[1]里面放.
      

  4.   

    我个人更主张你用对象的方式传过去.
    比如封装成QueryConnection