java变量的定义和使用,java变量的定义和使用

变量

所有的程序都使用变量临时存储各种数据。例如,当程序运行到某个阶段时请求用户输入一个数字,则您要用一个变量存储输入数据供以后使用。

变量必须在程序中被定义(或声明)后才能使用,您必须为每个变量确定一个具体类型。例如,您可能声明某变量为保存数字的类型,又声明另一个变量为保存人名的类型。(因为Java要求在使用变量前显式定义变量并声明变量值的类型,所以Java被称为是一个强类型的语言。有些语言则没有这些要求。一般说来,在创建大型程序时,强类型有助于减少程序错误。)

import java.awt.Graphics;

import java.awt.Color;

public class FirstApplet extends java.applet.Applet

{

public void paint(Graphics g)

{

int width = 200;

int height = 200;

g.drawRect(0, 0, width, height);

g.drawLine(0, 0, width, height);

g.drawLine(width, 0, 0, height);

}

}

这个程序中我们声明了两个名为width和height的变量。我们将其类型声明为int。一个int型的变量可以保存一个整数(如1、2、3等)。我们将两个变量都初始化为200。我们也完全可以这样写:

int width;

width = 200;

int height;

height = 200;

第一种形式只是输入起来稍快一些。

将变量赋予初值的过程称为初始化变量。一种常见的程序错误是忘记初始化变量。为重现此错误,试删除代码的初始化部分(“= 200”)然后重新编译程序观察后果。您会看到编译器将发现这个问题。顺便指出,这是编译器的一个非常好的特性。它将为您节省许多时间。

Java支持两种变量:简单(初级)变量和类。

int是简单变量的类型。这种变量可以保存一个数字,此外别无他长。您只要声明一个int变量,设置它为某个值后使用即可。另一方面,类可以包含多个成员和方法,这些方法能简化类的使用。一个易于理解的类的好例子就是Rectangle类,让我们从它开始。

我们一直使用的那个程序有一个局限:他总是假定窗口大小是200乘200像素。为什么我们不问问窗口“您的尺寸有多大?”,然后据此调整我们的矩形和对角线的大小呢?如果您回头查看Graphics类的说明文档(java.awt.Graphics.html——那个列出了所有可用的绘图函数的文件),您会发现其中有一个叫做getClipBounds的函数。点击此函数名浏览它的完整说明。这个函数没有参数但是会返回一个Rectangle类型的值。返回的矩形包含了绘图区的宽度和高度。若在此文档页面中点击Rectangle就会被转到Rectangle类(java.awt.Graphics.html)的文档页面。查看页首的变量索引您会发现这个类包含四个名字分别为x、y、width和height的变量。因此我们将要做的就是用getClipBounds得到代表画板边界的矩形,然后从这个矩形中提取宽度和高度数据,将它们保存在前一个例子中创建的width和height变量中,如下所示:

import java.awt.Graphics;

import java.awt.Color;

import java.awt.Rectangle;

public class FirstApplet extends java.applet.Applet

{

public void paint(Graphics g)

{

int width;

int height;

Rectangle r;

r = g.getClipBounds();

width = r.width - 1;

height = r.height - 1;

g.drawRect(0, 0, width, height);

g.drawLine(0, 0, width, height);

g.drawLine(width, 0, 0, height);

}

}

当运行上面程序的时候您会发现矩形和对角线恰好充满绘图区域。而且改变窗口大小时矩形和对角线还会自动重画适应新的窗口大小。这段代码引入了五个新概念,让我看一看:

1 首先,因为我们使用了Rectangle类,所以要在程序的第三行引进java.awt.Rectangle。

2 我们在本程序中声明了三个变量:两个(width和height)int型的,一个(r)Rectangle型的。

3 我们使用了getClipBounds函数获得绘图区域的大小。此函数没有参数所以我们也就不传入参数(使用“()”),但是它返回一个Rectangle。我们写下的代码“r = g.getClipBounds();”其意思是说:“请将返回的矩形赋值给变量r。”

4 变量r是Rectangle类型的,它其实包含四个变量:x、y、width和height(通过阅读Rectangle类的说明文档可以知道这些变量名)。要访问它们需使用“.”(点)操作符。因此表达式“r.width”的意思就是“从变量r中取出名为width的变量”。这个值被保存到我们的名为width的局部变量中。在此过程中我们减去了一个1。试试不做减法会是什么结果。再试试减去五会是什么结果。

5 最后,我们在绘图函数中使用了width和height。

学到这里常常提出的一个问题就是:“我们真有必要声明width和height变量吗?”答案是否定的。我们可以在绘图函数参数的位置直接输入r.width - 1。创建变量只是为了使程序更容易阅读,因此这是一个应该养成的好习惯。

Java支持多种简单变量类型。三种最常见的类型是:

· int——整型数值(1、2、3……)

· float——十进制小数(如3.14159)

· char——字符值(a、b、c……)

可以用简单类型进行数学运算。Java能够识别+(加)、-(减)、*(乘)、/(除)和几种其他的运算。这里有一个在程序中使用这些运算符的例子。假设您要计算一个半径为3米的圆球的体积。可用下面的代码完成:

float diameter = 10;

float radius;

float volume;

radius = diameter / 2.0;

volume = 4.0 / 3.0 * 3.14159 * radius * radius * radius;

第一行运算的意义是:“将diameter变量的值除以2.0,结果保存在radius变量中。”可见“=”符号在这里的意义就是:“将右侧计算的结果保存到左侧的变量之中。”

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值