数据库long类型 值123456
第一步:用”;“分号分割long类型
结果输出:1,2,3,4,5,6第二步:查询科目表 1对应语文  2对应数学  3对应英语 4 对应政治  5对应地理 6对应化学结果输出: 语文,数学,英语,政治,地理,化学
for(EvanModel erm : elist){
SubjectModel s=this.getSubjectService().findById(erm.getToUser());

下面怎么写啊

解决方案 »

  1.   

    可以把long类型的数据加上一个空字符串就变成一个"123456"的字符串类型的数据,然后有个toCharArray()方法,把字符串数据转化成字符数组,然后从字符数组中获取每个对应的字符就可以了。
      

  2.   


    Long long1 = 123456L;
    String string =long1+"";
    char[] cha = string.toCharArray();
    for (int i = 0; i < cha.length; i++)
    {   
    if (i != cha.length-1)
    {
    System.out.print(cha[i]+",");
    }else {
    System.out.print(cha[i]);
    }

    }
      

  3.   

    说说我的思路添加数据的时候1表示1班 2 表示2。。15表示15班
     
    数据库中的存的类型是long类型
    然后读取这个long类型 例如 Long str="12334235345";
    Long str="12334235345";用逗号每次循环加一个逗号  可是单个数 可以 双数就不知道怎么写  逗号怎么个分割法越想越不对劲怎么知道他是单数(1位数) 还是双数(2位数)
    对public class CopyOftt { /**
     * @param args
     */
    public static void main(String[] args) {
    String str="15234556610";
    String p=null;
    System.out.print("str长度为:"+str.length()+"\n");
    for(int i=1;i<str.length()+1;i++){ 
    }
    for(int j=0;j<str.length();j++){
    String k=str.substring(j, (str.length())- ( (str.length())-(j+1)   )  );
    //如果k=0则在前面追加1  表示10
    if(k.equals("0")){
    k="1"+k;
    }
    p=(j+";").replace(j+";", "初一"+k+"班;");
    System.out.print(p);
    }
    System.out.print(p.replace(p, "初一各班;"));



    }}
    控制台打印:
    str长度为:11
    初一1班;初一5班;初一2班;初一3班;初一4班;初一5班;初一5班;初一6班;初一6班;初一1班;初一10班;初一各班;
      

  4.   

    话说你存String类型的不行?String str="1,2,33,4,23,5,34,5" 完事分割的时候用splite根据","分割得到一个数组
      

  5.   

    Long str="12334235345";在该表中是外键的id,而且外键的id是long类型的 的地方都用到了  改起来的话 很麻烦  牵扯的地方太多啊