int j; int a[][]=new int[6][]; for( j=0;j<a.length;j++) a[j]=new int[j+1]; 把上面的代码放到Init()中就没有你说的错误了。不过有其他错误。
int j; int a[][]=new int[6][]; for( j=0;j<a.length;j++) ---->这里在干什么??这里不能进行这种操作啊!! a[j]=new int[j+1]; ---> int j; int a[][] = new int[6][]; public void init(){ for( j=0;j<a.length;j++) //写到一个函数中去 a[j]=new int[j+1]; //其余部分.... }
import java.awt.*; public class Andrew extends java.applet.Applet{ int j; int a[][]=new int[6][];
public void init(){
for(j=0;j<a.length;j++) a[j]=new int[j+1]; setBackground(Color.black); for(j=0;j<a.length;j++) for( a[j].length=0;a[j].length<j+1;j++) {if (a[j].length==0) a[j][a[j].length]=1; else a[j][a[j].length]=a[j-1][a[j].length-1]+a[j-1][a[j].length]; } } public void paint(Graphics lili){ Graphics2D lili2D=(Graphics2D)lili; Font type=new Font("Monospaced",Font.BOLD,20); lili2D.setFont(type); lili2D.drawString(a[j][a[j].length],5,25); }}出错: C:\j2sdk1.4.2\bin\htmll>javac Andrew.java Andrew.java:13: cannot assign a value to final variable length for( a[j].length=0;a[j].length<j+1;j++) ^ Andrew.java:24: cannot resolve symbol symbol : method drawString (int,int,int) location: class java.awt.Graphics2D lili2D.drawString(a[j][a[j].length],5,25); ^ 2 errors } 出错:
我写的,这你要是看不懂的话那就,I服了YOU. class dem { public void dem() { //i为循环时行的变量,j为循环时列的变量 int i,j; //ROW为总共要打的行数 final int ROW=5; int [][] aa =new int[ROW][]; //新建数组并符值 for(i=0;i<ROW;i++) {aa[i] =new int [i+1] ; for(j=0;j<=i;j++) { if(0==j||i==j) aa[i][j]=1; else aa[i][j]=aa[i-1][j-1]+aa[i-1][j]; } } //打印aa for(i=0;i<ROW;i++) for(j=0;j<=i;j++) { System.out.print(aa[i][j]); if(i==j) System.out.println(); } // 测试 //打印aa的长度 System.out.println("aa:"+aa.length); //打印aa[i]的长度 for(i=0;i<ROW;i++) { System.out.println("aa["+i+"]:"+aa[i].length); } } } class yhTriangle1 { public static void main(String[] args) { dem aa=new dem(); aa.dem(); } }
北落师门 我想要一个APPLET的 你帮帮忙啊
你是新手,你写的程序表达式都写到方法体的外边了, 连一些java最基本的规则都没弄明白。 建议你用测试时比较方便的,带有main函数的程序做练习。 import java.awt.*; import java.applet.Applet; public class demo extends Applet { int[][] bb; final int ROW=5; public void init() {int i,j; //ROW为总共要打的行数 int [][] aa =new int[ROW][]; //新建数组并符值 for(i=0;i<ROW;i++) {aa[i] =new int [i+1] ; for(j=0;j<=i;j++) { if(0==j||i==j) aa[i][j]=1; else aa[i][j]=aa[i-1][j-1]+aa[i-1][j]; } } bb = aa; }
public void paint(Graphics g) { int i,j; int col=50,row=50; Font fn = new Font("TimesRoman",Font.ITALIC,20); g.setFont(fn); for(i=0;i<ROW;i++) for(j=0;j<=i;j++) { g.drawString(""+bb[i][j],row+j*20,col); if(i==j) col = col+20; } } }
int a[][]=new int[6][];
for( j=0;j<a.length;j++)
a[j]=new int[j+1];
把上面的代码放到Init()中就没有你说的错误了。不过有其他错误。
int a[][]=new int[6][];
for( j=0;j<a.length;j++) ---->这里在干什么??这里不能进行这种操作啊!!
a[j]=new int[j+1];
--->
int j;
int a[][] = new int[6][];
public void init(){
for( j=0;j<a.length;j++) //写到一个函数中去
a[j]=new int[j+1];
//其余部分....
}
public class Andrew extends java.applet.Applet{
int j;
int a[][]=new int[6][];
public void init(){
for(j=0;j<a.length;j++)
a[j]=new int[j+1];
setBackground(Color.black);
for(j=0;j<a.length;j++)
for( a[j].length=0;a[j].length<j+1;j++)
{if (a[j].length==0)
a[j][a[j].length]=1;
else
a[j][a[j].length]=a[j-1][a[j].length-1]+a[j-1][a[j].length];
}
}
public void paint(Graphics lili){
Graphics2D lili2D=(Graphics2D)lili;
Font type=new Font("Monospaced",Font.BOLD,20);
lili2D.setFont(type);
lili2D.drawString(a[j][a[j].length],5,25);
}}出错:
C:\j2sdk1.4.2\bin\htmll>javac Andrew.java
Andrew.java:13: cannot assign a value to final variable length
for( a[j].length=0;a[j].length<j+1;j++)
^
Andrew.java:24: cannot resolve symbol
symbol : method drawString (int,int,int)
location: class java.awt.Graphics2D
lili2D.drawString(a[j][a[j].length],5,25);
^
2 errors }
出错:
class dem
{
public void dem()
{ //i为循环时行的变量,j为循环时列的变量
int i,j;
//ROW为总共要打的行数
final int ROW=5;
int [][] aa =new int[ROW][]; //新建数组并符值
for(i=0;i<ROW;i++)
{aa[i] =new int [i+1] ;
for(j=0;j<=i;j++)
{
if(0==j||i==j)
aa[i][j]=1;
else
aa[i][j]=aa[i-1][j-1]+aa[i-1][j];
}
}
//打印aa
for(i=0;i<ROW;i++)
for(j=0;j<=i;j++)
{
System.out.print(aa[i][j]);
if(i==j)
System.out.println();
}
// 测试
//打印aa的长度
System.out.println("aa:"+aa.length);
//打印aa[i]的长度
for(i=0;i<ROW;i++)
{
System.out.println("aa["+i+"]:"+aa[i].length);
} }
}
class yhTriangle1
{
public static void main(String[] args)
{
dem aa=new dem();
aa.dem();
}
}
我想要一个APPLET的
你帮帮忙啊
连一些java最基本的规则都没弄明白。
建议你用测试时比较方便的,带有main函数的程序做练习。
import java.awt.*;
import java.applet.Applet;
public class demo extends Applet
{ int[][] bb;
final int ROW=5;
public void init()
{int i,j;
//ROW为总共要打的行数
int [][] aa =new int[ROW][]; //新建数组并符值
for(i=0;i<ROW;i++)
{aa[i] =new int [i+1] ;
for(j=0;j<=i;j++)
{
if(0==j||i==j)
aa[i][j]=1;
else
aa[i][j]=aa[i-1][j-1]+aa[i-1][j];
}
}
bb = aa;
}
public void paint(Graphics g)
{ int i,j;
int col=50,row=50;
Font fn = new Font("TimesRoman",Font.ITALIC,20);
g.setFont(fn);
for(i=0;i<ROW;i++)
for(j=0;j<=i;j++)
{
g.drawString(""+bb[i][j],row+j*20,col);
if(i==j)
col = col+20;
}
}
}