java split string into string array产生第一个值错误

时间:2014-06-19 10:12:19

标签: java string split

输入字符串: - ; Lokacija; - ; Pozicija;梯度; - ; - ;

代码:

public static ArrayList<String> sortList = new ArrayList<String>();

//Load
String Row = new String("-;Lokacija;-;Pozicija;Grad;-;-;");
String[] RowAsList;
RowAsList = Row.split(";");
sortList.add( RowAsList[0] );

// Check
StringBuffer minus = new StringBuffer( "-");
String itm = sortList.get(0);
if( !itm.contentEquals( minus ) )
   // not minus
else
.....

问题:此代码表示第一项(0)没有减号,可以正确识别后续减号。

任何人都有任何想法?

谢谢, Kajko

3 个答案:

答案 0 :(得分:0)

尝试:

       String Row = new String("-;Lokacija;-;Pozicija;Grad;-;-;");

       ArrayList<String> sortList = new ArrayList<String>();

       String[]  RowAsList= Row .split(";");

       sortList.add( RowAsList[0]);

       StringBuffer minus = new StringBuffer( "-");

       String itm = sortList.get(0);
       if( itm.equals( minus.toString())){
           System.out.println("Get Here" + itm);
       }
       else{
           System.out.println("Not Here"+ itm);
       }

答案 1 :(得分:0)

删除static成员之前的sortList修饰符:

public List<String> sortList = new ArrayList<String>();

答案 2 :(得分:0)

这就是你想要的东西

public class Test
{
    public static ArrayList<String> sortList = new ArrayList<String>();
    public static void main(String a[])
    {


//Load
        String Row = new String("-;Lokacija;-;Pozicija;Grad;-;-;");
        String[] RowAsList;
        RowAsList = Row.split(";");
        for(int i=0;i<RowAsList.length-1;i++) {
            sortList.add(RowAsList[i]);
        }
        System.out.println(sortList);

// Check
        StringBuffer minus = new StringBuffer("-");
        String itm = sortList.get(0);
        if( itm.contentEquals( minus ) )
            System.out.println(sortList.get(0));
        // not minus
        else
            System.out.println("not found...");
    }
}