if(args=null){
return;
}
return;
}
解决方案 »
- jdbc连接sql server2005 express问题
- 为什么没有 Integer.parseInt(char arg0)
- 如果要增加这个数组的大小如何做。
- 看了http://free5.ys168.com/?1shome这个网站右边的目录列表
- 为什么从java.sql.ResultSet中派生新类出现错误?
- 小弟正在学习java的关于流的处理,java在这方面的类超多,不知道如何下手才好..
- FileFilter的使用方法,请各位大虾帮我看看
- 想做大项目
- 最简单的applet问题
- 求救,关于jbuilder6.0的资料
- 如何创建一个双击可运行的.jar文件
- 关于System.in.read()输入问题
if(args=null)//////////////////////
{return;}
int[] a = new int[args.length];
for (int i = 0; i < args.length; i++)
a[i] = Integer.parseInt(args[i]);
return a;
}
//编译出错
E:\j2sdk1.4.1_02\save\OOPG\MergeSortIntegerArgs.java:24: incompatible types
found : java.lang.String[]
required: boolean
if(args=null)
^
E:\j2sdk1.4.1_02\save\OOPG\MergeSortIntegerArgs.java:25: missing return value
{return;}
^
2 errorsProcess completed.
当然
if( args == null ){
return;
}--------------------Configuration: j2sdk1.4.1_02 <Default>--------------------
E:\j2sdk1.4.1_02\save\OOPG\MergeSortIntegerArgs.java:25: missing return value
{return;}
^
1 errorProcess completed.
java MergeSortIntegerArgs 4 23 4 25 34 5 3245 345
//可排序
//但java MergeSortIntegerArgs
//出现太多异常!如何避免。
public class MergeSortIntegerArgs { public static void main(String[] args) {
// try {
// if(args==null)
// {System.exit(0);
// return ;}
int[] a = getNumbers(args);
sort(a);
printNumbers(a);
} catch (NumberFormatException e) {
String msg = "Error: argument " + e.getMessage();
msg += " is badly formed.";
System.out.println(msg);
System.exit(0);
}
}
static int[] getNumbers(String[] args) throws NumberFormatException {
// if(args==null)
// {return null;}
int[] a = new int[args.length];
for (int i = 0; i < args.length; i++)
a[i] = Integer.parseInt(args[i]);
return a;
}
static void printNumbers(int[] a) {
for (int i = 0; i < a.length; i++)
System.out.print(a[i] + " ");
System.out.println();
}
static void sort(int[] a) {
msort(a, 0, a.length-1);
}
static void msort(int[] a, int lo, int hi) {
if (lo == hi) return;
else {
int mid = (lo + hi) / 2;
msort(a, lo, mid);
msort(a, mid+1, hi);
merge(a, lo, mid, hi);
}
}
static void merge(int[] a, int lo, int mid, int hi) {
int[] b = new int[hi-lo+1];
int i = lo, j = mid+1, k = 0;
while ((i < mid+1) && (j < hi+1)) {
if (a[i] < a[j])
b[k++] = a[i++];
else
b[k++] = a[j++];
}
if (i == mid+1)
System.arraycopy(a, j, b, k, hi-j+1);
else
System.arraycopy(a, i, b, k, mid-i+1);
System.arraycopy(b, 0, a, lo, b.length);
}
}