Java自定义一维数组、二维数组的实例化,解决一维数组、二维数组NullPointerException异常

 前言:最近这两天在csdn论坛经常看到有人因为自定义的数据的实例化而导致报NullPointerException异常,原因只是因为没有把数组实例化,因为它是“自定义”的,那么必须得初始化才能调用属性和方法。下面简单动手实例自定义数组。

1、自定义一维数组:(可能比较常见的就是在Swing中应用的,就举Swing的例子)

import java.awt.*;
import javax.swing.*;
public class OA extends JFrame{
	JPanel jp=(JPanel)this.getContentPane();
    private JTable[] jt;//定义全局一维数组
    public OA()
    {
    	jp.setLayout(null);
    	jt=new JTable[256]; //初始化数组
		for(int i=0;i<jt.length;i++)
		{
			jt[i]=new JTable(); //实例化数组
		}
		int k=0,j=0; 
		for(int i=0;i<jt.length;i++,j++)
		{
			final int g=i;
			if(j%16==0)
			{
				k++;
			}
			int x=Math.abs(j%16);
			int marginwidth=x*5+20*x;
			int marginheight=(k-1)*5+20*(k-1);
			jt[i].setBounds(new Rectangle(marginwidth,marginheight, 20, 20)); 
			jp.add(jt[i]);  
		}
    }
	public static void main(String[] args) { 
		 OA frame=new OA();
		 frame.setSize(800,600);
		 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		 frame.setVisible(true);
	}
}


 

2、二维数组“动态”实例化:

  Student team[][];//定义二维数组
  team=new Student[3][]; //初始化二维数组
  for(int i=0;i<team.length;i++)
  { 
   team[i]=new Student[i+1]; //这里很重要,不可缺少.分配空间
   team[i][0]=new Student();//实例化自定义二维数组
  }
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值