《Java语言程序设计与数据结构(基础篇)第十二版》Day2

第2章 基本程序设计

2.1 引言

用编程解决实际问题

2.2 编写简单的程序

问题:计算圆的面积

分析:读入半径;使用公式计算面积;显示面积

文件名称:ComputeArea.java

public class ComputeArea{
    public static void main(String[] args){
        double radius;//半径
        double area;//面积
        radius = 20;
        area = radius * radius * 3.14159;
        System.out.println("The area for the circle of radius "+radius+" is "+area);
    }
}

加号(+)有两种含义:①代表加法,②用于字符串的链接(合并)。

2.3 从控制台读取输入

使用Scanner类从控制台读取输入,使程序可以获取用户的输入。

  Java使用System.out表示标准输出设备,使用System.in表示标准输入设备。为执行控制台输出,只需使用println方法在控制台上显示基本数据类型和字符串。为获得控制台输入,可以使用Scanner类创建一个对象,读取来自Scanner.in的输入。例如:

Scanner input = new Scanner(System.in);

语法new Scanner(System.in)创建了一个Scanner类型的对象。语法Scanner input声明input是一个Scanner类型的变量。整句Scanner input = new Scanner(System.in)创建了一个Scanner对象,并且将它的引用赋给变量input。

文件名称:ComputeAreaWithConsoleInput.java

import java.util.Scanner;   //Scanner is in the java.util package
public class ComputeAreaWithConsoleInput{
    public static void main(String[] args){

        //创建Scanner对象
        Scanner input = new Scanner(System.in);

        Scanner.out.print("Enter a number for radius:");   //提示用户输入
        double radius = input.nextDouble();  //从键盘上读取输入的数值,并将其赋值给radius

        double area = radius * radius * 3.14159;
        
        System.out.println("The area for the circle of radius "+radius+" is "+area);
    }
}
        

Scanner类在包java.util里,在第1行被导入。两种类型的import语句:

  • 特定导入:在import语句中指定单个的类。

例如,从包java.util中导入Scanner。import java.util.Scanner;

  • 通配符导入:通过使星号作为通配符,导入一个包中的所有类。

例如,导入包java.util中的所有类。import java.util.*;

声明特定导入和声明通配符导入在性能上没有差别。

2.4 标识符

标识符是为了标识程序中诸如类、方法、变量等元素而采用的命名。

程序中的命名称为标识符,标识符必须遵从的规则:

  • 标识符是由字母、数字、下划线和美元符号($)构成的字符序列。
  • 标识符必须以字母、下划线、美元符号($)开头,不能以数字开头。
  • 标识符不能是保留字。保留字子啊Java语言中具有特定含义。关键字是保留字。
  • 标识符可以为任意长度。

2.5 变量

变量用于表示在程序中可能被改变的值。

变量用于表示某种类型的数据。为了使用变量,声明变量时必须确定该变量的名字及存储的数据类型。声明变量的语法如下:

datatype variableName;

如果几个变量为同一类型,可以一起声明,如下所示:

datatype variable1,variable2,...,ariablen;

变量之间用逗号分隔开。

eg:int i,j,k;

变量通常都有初始值,可以声明变量时并同时将其初始化。

eg:int count;count = 1;

eg:int count = 1;

在给变量赋值之前,必须声明变量。方法中声明的变量在使用之前必须被赋值。

2.6 赋值语句和赋值表达式

赋值语句为变量分配值。在Java中赋值语句也可以用作表达式。

变量在声明之后,可以使用赋值语句给它赋一个值。在Java中,等号(=)作为赋值操作符。赋值语句:variable = expression;

在Java中,赋值语句本质上就是一个表达式,计算结果为赋给赋值操作符左侧变量的值。因此,赋值语句也称为赋值表达式。在赋值语句中,左边变量的数据类型必须与右边的值的数据类型兼容。

2.7 命名常量

命名常量是表示不变值的标识符。

变量的值在程序执行过程中可能会发生改变,但常量则表示永不改变的数据。

声明常量的语法:final datatype CONATANTNAME = value;

必须在同一条语句中对常量进行声明和赋值。final是声明常量的Java关键字。常量中的所有字母都要大写。

eg:final double PI = 3.14159;

使用常量好处:

  • 当一个值多次被使用时,不必重复输入;
  • 如果必须修改常量值,只需在源代码的一个地方做改动;
  • 给常量赋一个描述性名字会提高程序的可读性。

文件名称:ComputeAreaWithConsoleInput.java

import java.util.Scanner;   //Scanner is in the java.util package
public class ComputeAreaWithConsoleInput{
    public static void main(String[] args){
        final double PI = 3.14159;
        
        //创建Scanner对象
        Scanner input = new Scanner(System.in);

        Scanner.out.print("Enter a number for radius:");   //提示用户输入
        double radius = input.nextDouble();  //从键盘上读取输入的数值,并将其赋值给radius

        double area = radius * radius * PI;
        
        System.out.println("The area for the circle of radius "+radius+" is "+area);
    }
}
    

2.8 命名习惯

程序中的变量、常量、类和方法选择直观易懂的描述性名字。命名是区分大小写的。

  • 使用小写字母命名变量和方法。例如,变量radius和area以及方法print。如果一个名称包含多个单词,就将它们连在一起,第一个单词的字母小写,而后面每个单词的首字母大写。例如,变量numberofstudents。这种命名风格称为驼峰命名法。
  • 类名中每个单词的首字母大写。例如,类名ComputeArea和System。
  • 常量中的所有字母大写,两个单词间用下划线连接。例如,常量PI和常量MAX_VALUE。

2.9 数值数据类型和操作

6种数值数据类型及其范围和存储空间:

2.9.1 从键盘读取数值

Scanner对象的方法:

2.9. 2 数值操作符

数值数据类型的操作符包括标准的算术操作符:+(加)、-(减)、×(乘)、/(除)、%(取模)

操作数是被操作符操作的值。

当除法的两个操作数均为整数时,除法的结果为商,而小数部分被截去。为了执行浮点数的除法,其中一个操作数必须是浮点数。
操作符%称为取模操作符,在执行除法后得到余数。左边的操作数是被除数,右边的操作数是除数。
操作符%通常用于正整数,但也可用于负整数和浮点值。只有当被除数是负数时,余数才是负的。

2.9.3 指数运算

调用pow方法来执行指数运算。

pow方法定义在Java API的Math类中。使用语法Math.pow(a,b)调用该方法,并返回运算结果。其中a和b是pow方法中参数,数值是调用方法的真实值。

2.10 数字型字面值

数字值是直接出现在程序中的常量值。

2.10.1 整型字面值

整型字面值可以赋值给一个整型变量,只要它可以放入该变量中即可。如果字面值太大,超出该变量的存储范围,就会出现编译错误。例如:语句byteb=128就会导致一个编译错误,因为byte型变量存放不下128(注意:byte型变量的范围是-128~127)。

整型字面值默认为int型,它的值从

为了表示一个1ong型的整型字面值,需要在其后加字母L或1。推荐使用L,因为1(L的小写)很容易与1(数字1)混淆。

注意:默认情况下,整型字面值是一个十进制整数。如要表示一个二进制整型字面值使用前置 0b或者 0B(零B);如要表示一个八进制整型字面值,使用前置0(零);而要表示一个十六进制整型字面值,使用前置0x或0X(零X)。

2.10.2 浮点型字面值

浮点型字面值带小数点,默认为double型。可以通过在数字后面加字母f或F表示该数为f1oat型值,也可以在数字后面加d或D表示该数为 doub1e型值。
f1oat型值具有6~9个有效数字,而double型值具有15~17个有效数字。

2.10.3 科学计数法

E(或e)表示指数

浮点型字面值也可以用科学计数法表示。

写成1.23456E2或者1.23456E+2

写成1.23456E-2

2.11 JShell

JShell是用于快速对表达式求值以及执行语句的命令行工具。

JShell是Java 9引入的命令行交互式工具。JShell支持输入单个Java语句并执行,可以立即查看结果,无需编写完整的类。此功能通常称为REPL(读取-计算-打印循环),即输入表达式和语句后立即计算和执行,并立即显示结果。

要使用JShell,需要安装JDK 9或者以上版本。若使用Windows系统,要确保在Windows环境中设置了正确的路径。

打开命令行窗口,输入jshell来启动JShell。

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值