Java 解析字符串,创建单个字符串并将它们与if语句中的值进行比较?

Java 解析字符串,创建单个字符串并将它们与if语句中的值进行比较?,java,string,parsing,if-statement,java1.4,Java,String,Parsing,If Statement,Java1.4,我正试图做一些看起来很简单的事情,但我有点被卡住了,我不知道该怎么做 所以基本上我想做的是解析字符串str,创建更小的字符串,并将它们与if语句中的内容进行比较 String str = ("1, 2, 3); StringTokenizer st = new StringTokenizer(str, ","); while (st.hasMoreElements()){ //instead of printing the element I want t

我正试图做一些看起来很简单的事情,但我有点被卡住了,我不知道该怎么做

所以基本上我想做的是解析字符串str,创建更小的字符串,并将它们与if语句中的内容进行比较

    String str = ("1, 2, 3);
    StringTokenizer st = new StringTokenizer(str, ",");
    while (st.hasMoreElements()){
        //instead of printing the element I want to generate str[i] or something of the sort
        System.out.print(st.nextElemenet());
    }

    //then I want to do this as many times as I have str[i]
    if(str1 == 2 || str2 == 3 || str3 == 3){
    //do something
    }
基本上,我想解析一个字符串,生成一组较小的字符串,并在if语句中使用它们。有什么想法吗?抱歉,如果这看起来像一个简单的问题,但我有点被卡住了哈哈

PS Java 1.4不支持.split,它需要在Java 1.4中^_^
我可以创建一个ArrayList,但我仍然不确定如何在if中迭代它,将它的所有值与给定值进行比较:/

我想您需要的是字符串数组

String[] strArray = new String[st.countTokens()]; // Create an array with no. of tokens as the size
int counter = 0; // Counter variable to be used as the arrays index.
while (st.hasMoreElements()){
    //instead of printing the element I want to generate str[i] or something of the sort
    strArray[counter++] = st.nextElement(); // add the element to the array
}
通过这种方式,您可以将所有标记添加到字符串数组中,然后可以遍历该数组并比较元素。现在要对这些元素中的每一个进行一些if检查,您需要一个循环。因为您使用的是Java1.4,所以我使用了标准的
for
循环


for(int i=0;i@TheLostMind当然是打字错误。为什么不使用拆分(“,”)和数组。asList(array).contains(object)?是数组,它的单个元素将被再次用于任何其他元素operations@Harsha该数组将在我下面描述的单个if语句中使用将触发一系列其他检查,但strArray值本身不会在其他任何地方使用。抱歉,不清楚。最好将数组转换为list,然后使用list.contains(“someString”)进行检查非常感谢。现在你把它写下来似乎很简单。它可以工作了。:D基本上我想知道我是否可以在一个循环中完成if,但遗憾的是,没有“for”我就做不到干杯D@celezar-本来可以这样做,但我不想让事情复杂化,而且,Boris似乎想对数组中的每个字符串都做些什么,所以不管是列表遍历还是数组遍历。
for(int i=0; i<strArray.length; i++) {
    if(strArray[i].equals("someString")) { // use equals method for string value comparisons.
        // do something
    }
}