现在有一个String 字符串例如: 
  String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
 以“:”分割。赋到object 对象上,或是直接一个一个的赋上。都有哪些方式?如何赋到object 对象上?
赋完了,还要有一个需求,就是把这个object 取出来。
例如:问题1:如果把这个直接赋到 object 上,就是不以“:”分割的形式,在取值的时候,要每6个字符串用到一个sql语句上。用for 循环如何循环得到。object 好像没有 .length 之类的属性吧! 

解决方案 »

  1.   

    abcString.split(":")
    分割为数组
    然后...自己for吧
      

  2.   


    Object objs[] = abcString.split(":");用去SQL语句,你可以再将其以逗号“,”分割,然后传值。
      

  3.   


    Object objs[] = abcString.split(":");用去SQL语句,你可以再将其以逗号“,”分割,然后传值。
      

  4.   

    先abcString.split(":")然后没一个数组元素再split(",")就可以了。没必要放object里的。
      

  5.   

    先split(":")再split(",")没必要放object里的。
      

  6.   

    /**
     * @param args
     */
    public static void main(String[] args) { String abcString = "4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] records = abcString.split(":"); for (String record : records) { String[] cols = record.split(","); for (String col : cols) {

    // 传进sql的参数
    System.out.println(col);
    }
    }
    }
      

  7.   


    String sqlStr = "";String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] obj1 = abcString.split(":");
    for(int i=0; i<obj1.length;i++){
    Object[] obj2 = obj1[i].split(",");
    sqlStr = "insert into xxxtable(param1,param2,param3,param4,param5,param6) values("+obj2[0]+","+obj2[1]+","+obj2[2]+","+obj2[3]+","+obj2[4]+","+obj2[5]+");";
    System.out.println(sqlStr);
    }insert into xxxtable(param1,param2,param3,param4,param5,param6) values(4,开,1,222,222,CJ);
    insert into xxxtable(param1,param2,param3,param4,param5,param6) values(5,开,1,333,333,CJ);
    insert into xxxtable(param1,param2,param3,param4,param5,param6) values(6,开,1,444,444,CJ);
    insert into xxxtable(param1,param2,param3,param4,param5,param6) values(24,开,1,999,999,KZ);
    insert into xxxtable(param1,param2,param3,param4,param5,param6) values(25,开,1,888,888,KZ);
      

  8.   

    我晕了啊!!你们回答的跟本不对嘛!!都对都对不上。
    因为需求,必须要放在object  上
      

  9.   

    String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] strs = abcString.split(":");
    String[] substr = null;
    String sqlStr;
    for(int i=0;i<strs.length;i++){
    substr = strs[i].split(",");
    sqlStr = "insert into table values(substr[0],substr[1],substr[2],substr[3],substr[4],substr[5]);";
    }
      

  10.   


    String sqlStr = "";String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] obj1 = abcString.split(":");
    for(int i=0; i<obj1.length;i++){
        Object[] obj2 = obj1[i].split(",");
        sqlStr = "insert into xxxtable(param1,param2,param3,param4,param5,param6) values("+obj2[0]+",'"+obj2[1]+"',"+obj2[2]+","+obj2[3]+","+obj2[4]+",'"+obj2[5]+"');";
        System.out.println(sqlStr);
    }给8楼补充下 有些字符串 需要加单引号
      

  11.   


    String sqlStr = "";String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] obj1 = abcString.split(":");
    for(int i=0; i<obj1.length;i++){
        Object[] obj2 = obj1[i].split(",");
        sqlStr = "insert into xxxtable(param1,param2,param3,param4,param5,param6) values("+obj2[0]+",'"+obj2[1]+"',"+obj2[2]+","+obj2[3]+","+obj2[4]+",'"+obj2[5]+"');";
        System.out.println(sqlStr);
    }给8楼补充下 有些字符串 需要加单引号
      

  12.   


    String sqlStr = "";String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] obj1 = abcString.split(":");
    for(int i=0; i<obj1.length;i++){
        Object[] obj2 = obj1[i].split(",");
        sqlStr = "insert into xxxtable(param1,param2,param3,param4,param5,param6) values("+obj2[0]+",'"+obj2[1]+"',"+obj2[2]+","+obj2[3]+","+obj2[4]+",'"+obj2[5]+"');";
        System.out.println(sqlStr);
    }给8楼补充下 有些字符串 需要加单引号
      

  13.   


    String sqlStr = "";String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] obj1 = abcString.split(":");
    for(int i=0; i<obj1.length;i++){
        Object[] obj2 = obj1[i].split(",");
        sqlStr = "insert into xxxtable(param1,param2,param3,param4,param5,param6) values("+obj2[0]+",'"+obj2[1]+"',"+obj2[2]+","+obj2[3]+","+obj2[4]+",'"+obj2[5]+"');";
        System.out.println(sqlStr);
    }给8楼补充下 有些字符串 需要加单引号
      

  14.   


    String sqlStr = "";String abcString="4,开,1,222,222,CJ:5,开,1,333,333,CJ:6,开,1,444,444,CJ:24,开,1,999,999,KZ:25,开,1,888,888,KZ";
    String[] obj1 = abcString.split(":");
    for(int i=0; i<obj1.length;i++){
        Object[] obj2 = obj1[i].split(",");
        sqlStr = "insert into xxxtable(param1,param2,param3,param4,param5,param6) values("+obj2[0]+",'"+obj2[1]+"',"+obj2[2]+","+obj2[3]+","+obj2[4]+",'"+obj2[5]+"');";
        System.out.println(sqlStr);
    }
    给8楼补充下 有些字符串 需要加单引号
      

  15.   

    莫非是这样?public class  你定义的类的名称{
       含有6个属性以及对应的 get set 方法
    }
    然后
    String[] strs = abcString.split(":");
            String[] substr = null;
            String sqlStr;
            for(int i=0;i<strs.length;i++){
                substr = strs[i].split(",");
                   你定义的类.set属性1(substr[0]); 
                          类.set属性2(substr[1]);
                          ..................   
             }
      

  16.   

    典型的不善于使用良好的数据结构,这种类型当然要用集合,不要搞object
      

  17.   

    郁闷呀!!这样子吧,把那个字符串放到一个object 中  这个怎么放?  我看了楼上的一些朋友,都没有这个呀! 然后现取出来,要是光是字符串的话,分割,再赋值我现在己经实现了
      

  18.   

    "那个字符串放到一个object 中" 。 OBJECT 是对象  对象怎么可能等于一个字符串  只有对象的属性可以赋值~·
    你不要理解错了
      

  19.   


    虚心求教,如果是放到一个 Ojbect 中该如何放呢? 我对Object 不是很了解,很迷糊
      

  20.   

    谢谢你。这种方法是可以,还有一个问题,如果一传过来就是一个Object 呢?我该怎么处理。
    就是这一组字符串,是一个一个的放,还是怎么放方便 ,我对object不是很了解,虚心求教!
      

  21.   

    我22 楼不是回复你了~~
    public class  Object{
       //含有6个属性以及对应的 get set 方法
       prvate  类型  属性名称;
       prvate  类型  属性名称;
    .........
    }
    然后
    String[] strs = abcString.split(":");
            String[] substr = null;
            String sqlStr;
            List object_list=null;//定义一个LIST 存放很多对象
            for(int i=0;i<strs.length;i++){
            Object object=new Object(); //new 出一个对象的实例
                substr = strs[i].split(",");
                   object.set属性1(substr[0]); 
                   object.set属性2(substr[1]);
                          ..................  、
                     object_list.add(object);//把对象添加到LIST 中
             }
    这样够直接 够清楚了吧
      

  22.   

    我也不想要那个object 我对这个不了解。只是现在 前台是一个Flex 通过scoket 传到后台,就是以上的那些字符串,如果是直接传字符串,传的过程中可能丢失,或不是怪上能收到。就想到了传object 类型的值。就是以上出现,而要实现的问题了!有知道的,请教一下!谢谢
      

  23.   

    看文档,java.lang.Object这个类是所有类的父类,也就意味着可以将任何类转换成Object
      

  24.   

    //输入一组String字符串,用":"号隔开 要求把它们转换成String数组
    public String[] strToArray(String str) {
      StringTokenizer st = new StringTokenizer(str, ":");
      String[] strArray = new String[st.countTokens()];
      int strLeng = st.countTokens();   for (int i=0; i<strLeng; i++) {
         strArray[i] = st.nextToken();
      }
       return strArray;
       }//这样子,字符串就封装到字符串数组中了,你把字符串数组当参数再传递!
      

  25.   

    private List<Object[]> list; public List<Object[]> getList() {
    return list;
    } public void setList(List<Object[]> list) {
    this.list = list;
    }然后 object[]从数据库里面取值