Java 从循环终止

Java 从循环终止,java,Java,当数字没有保留在逗号分隔的字符串中,但我没有找到条件时,我想终止循环…保持这样的循环,不需要其他任何东西 forint i=0;iAl.get0,则在不测试其余元素的情况下退出循环。OP的程序设计用于查找整个过程中的最大值set@afrin216-我的错,确实错了,谢谢你指出。 for(String input:lineVector) { Al.add(i,Integer.parseInt(input)); }

当数字没有保留在逗号分隔的字符串中,但我没有找到条件时,我想终止循环…

保持这样的循环,不需要其他任何东西


forint i=0;i当您使用split函数时,它会用以“-”分隔的元素填充字符串数组。例如,i-am-doing-good将被指定为lineVector[0]=i、lineVector[1]=am、lineVector[2]=doing等。所以,如果你使用

import java.util.*;
public class CommaSepratedNumMax 
{
    public static void main(String args[])
    {
        Scanner san = new Scanner(System.in);
        ArrayList <Integer> Al = new ArrayList<Integer>();
        String line;
        String[] lineVector;
        System.out.println("enter the series");
        line = san.nextLine();
        lineVector = line.split(",");
        for(int i=0;;i++)
        {
            Al.add(i,Integer.parseInt(lineVector[i]));
        }

        int max=Al.get(0);
        for(int i=0;i<Al.size();i++)
        {
            if (Al.get(i)>max)
                max=Al.get(i);
        } 
        System.out.println("max no in series is="+max);
    }
}
这里的断点是字符串数组长度,这是一种正常情况

您可以使用并删除循环条件本身。此外,你避免了所有的计数索引的东西-非常混乱。我相信它可以从Java5获得

for(int i=0;i<=lineVector.length;i++)
    {
        Al.add(i,Integer.parseInt(lineVector[i]));
    }

使用break语句。您以前尝试过哪些条件?此代码将以IndexOutOfBoundsException:forint i=0;可怕的方式死掉;;i++循环直到lineVector[i]消失。@cyberPheonix-OP正在请求第一个循环的条件。另外,根据您的逻辑,如果Al.get1>Al.get0,则在不测试其余元素的情况下退出循环。OP的程序设计用于查找整个过程中的最大值set@afrin216-我的错,确实错了,谢谢你指出。
for(String input:lineVector)
{
    Al.add(i,Integer.parseInt(input));
}