定义一个数组,然后输出,每输出十个数就换行,程序如下:
public class Turn{
  public static void main(String[] args){
    int[] a={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17};
    for(int i=1;i<=9;i++){
      (i%10==0) ? (System.out.println(a[i]+" ")): (System.out.println(a[i]+"\n"));
    }
  }
}
编译一下,出现第5句不是语句的错误,难道非得用if 语句吗?我这样写错在哪呢?
      

解决方案 »

  1.   

    我怀疑println不返回值,所以不可以作为表达式。猜测。
      

  2.   

    System.out.println(i%10==0 ? a[i]+" ": a[i]+"\n"); 
      

  3.   

    healer_kx说对了三目条件运算符:
    1.表达式1是boolean类型的表达式,表达式2和表达式3的数据类型要一致。
    2.其结果作为三目条件表达式的值
      

  4.   

    System.out.println((i%10==0)? (a[i]+" "): (a[i]+"\n"));