Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java与我预想的不一样_Java - Fatal编程技术网

Java与我预想的不一样

Java与我预想的不一样,java,Java,我试图将java语句与命令行输入进行比较。如果我给它多个词,比如 Cox jerry bridges alpine rollin 它应该打印出alpine(按字母顺序排在第一位),但它没有这样做。我希望它打印出按字母顺序排列的第一个命令行参数 你知道为什么这个程序不起作用吗 package Min; public class Min { public Min(String[] args) { String temp; if (args.length >0)

我试图将java语句与命令行输入进行比较。如果我给它多个词,比如

Cox jerry bridges alpine rollin
它应该打印出alpine(按字母顺序排在第一位),但它没有这样做。我希望它打印出按字母顺序排列的第一个命令行参数

你知道为什么这个程序不起作用吗

package Min;

public class Min {

public Min(String[] args)
{

    String temp;
    if (args.length >0)
        temp = args[0];
    else
       throw new IllegalArgumentException("need command line arg");
    for(String k : args)
    {
        int i = k.compareTo(temp);
        if ( i > 0) //k > temp
        {
            temp = k;
        }
    }
    System.out.println(temp);

}


public static void main(String[] args) {
   new Min(args);//Test1 new();
}

}

两个问题:您正在查找最大值,而不是最小值,按字母顺序意味着忽略大小写,而与相比则不行

  • 反向比较以找到最小值

    if (i < 0)
    

  • 介意详细说明一下它应该做什么吗?你认为它会如何工作?…它应该按字母顺序打印出第一个,它打印的是哪一个?
    int i = k.compareToIgnoreCase(temp);