《JAVA语言概述》PPT课件.ppt_第1页
《JAVA语言概述》PPT课件.ppt_第2页
《JAVA语言概述》PPT课件.ppt_第3页
《JAVA语言概述》PPT课件.ppt_第4页
《JAVA语言概述》PPT课件.ppt_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章 Java 语言概述二,复习,安装、编辑、编译、解释执行 JAVA 应用程序 JAVA小应用程序,第一个Application中常见错误,public class A void f() System.out.println(“I am A“); class Hello1 public static void main (String args ) System.out.println(“你好,很高兴学习Java“); A a=new A(); a.f(); ,- javac - Hello1.java:1: 类 A 是公共的,应在名为 A.java 的文件中声明 public class A 1 错误 输出完成 (耗时 0 秒) - 正常终止,复习,安装、编辑、编译、解释执行 JAVA 应用程序 JAVA小应用程序,编辑:HelloApplet.java(Java Applet程序),/ 第一个Applet程序. import java.applet.*; import java.awt.*; public class HelloApplet extends Applet public void paint(java.awt.Graphics g) g.drawString(s,25,25); / 显示方法,每次需要重画时该方法被调用 ,编辑:Java Applet程序(applet.html), Hello World ,编译和运行:Java程序,Compiler 编译应用程序:javac.exe javac HelloApplet.java Execute 执行应用程序:appletviewer.exe appletviewer applet.html,注意 Applet小应用程序运行不是使用JAVA命令执行,必须使用appletviewer命令且必须对应HTML文件。,2.1 Java 语言开发环境的安装与配置 2.2 使用 JDK 开发 Java 程序 2.3 屏幕输出与键盘输入 2.4 Java程序基本结构 2.5 Java基本数据类型 2.6 Java语言的构成 标识符、关键字与字面值(直接量)、变量、常量 2.7 输入和输出 2.8 运算符和表达式,9,2.5 JAVA基本数据类型(Data Type),Java type system,primitive,reference,char,numeric,boolean,class,interface,array,integral,floating-point,byte,short,int,long,float,double,字面值 直接量,10,Data Type,Java是一种强类型的语言 每个变量每个表达式都有一个类型,每个类型被严格定义 所有赋值都要进行类型兼容性检验 Unique Data(for portable and cross-platform) 所有基本类型所占的位数都是严格定义和确定的,并不因操作系统的不同而不同,这样才能确保其大小在所有平台上是相同的.,八种基本数据类型,整数类型:byte,short,int,long 浮点类型:float,double 字符类型:char 逻辑类型:boolean,1. 整数类型与字面值,(1) 整数类型的字面值(书写格式) int a = 100; / 100为十进制形式字面值 a = 077; / 077为八进制形式字面值 long b = 100000L; / 100000L为long类型字面值 byte c = 0x55; /0x55为十六进制形式字面值,(2) 整型字面值的默认类型 整型字面值的默认类型(即缺省类型)是int型。 int a = 77; int b = 0x77; int c = 077; long d = 100000000000;,/出错,应改为100000000000L 出错原因是100000000000不能表示合法的int型数据(超过了231-1),所以需要写成100000000000L。,2. 浮点类型与字面值,(1) 浮点类型的字面值(书写格式) double a = 100.123; float b = 123.1F; 浮点型字面值的常用书写格式包括: 小数形式。比如,10.0、12345.123。 浮点型后缀。对于float类型的字面值,一般在上述形式的后面添加f或F,而double类型也可在数字之后加D或d(一般省略D或d)。 比如,123.1F、1.23E3F、2e3f都是float类型的字面值,而100.123D经常省略为100.123。,(1) 浮点类型的字面值(书写格式) a = 1.23E5; / 1.23乘以10的5次方 b = 1.23E3F; / 1.23乘以10的3次方且是float类型 a = 2e10; /2乘以10的10次方 b = 2e3f; 浮点型字面值的常用书写格式包括: 指数形式。包括小数部分与指数部分,中间用字母E或e分隔。,(2) 默认浮点型 浮点型数值默认为double型。double类型字面值一般是省略D或d;而float类型字面值之后必须加f或F,否则会导致编译出错。 double a = 1.23; /可以将1.23D省略为1.23 float b = 1.23; /出错,必须将1.23写成1.23F或1.23f b = 1.23e3; /出错,必须将1.23e3写成1.23e3F或1.23e3f 由于1.23、1.23e3都是默认为double类型,所以会导致出错,而必须在1.23、1.23e3之后添加浮点型后缀F或f。,3. 字符类型,字符char类型占用2个字节(16比特),本质上是个非负整数,其取值范围为0 65535(即0216-1)。 (1) 字符类型的字面值格式(即字符数值的书写格式) char a = A; char b = 啊; char c = u554A; /表示中文字符啊 char d = u0061; /表示字符a (2) 用整数对字符类型变量赋值 char类型本质上是双字节无符号整数,可用数字对其初始化或赋值。 char e = 97; /e将表示字符a char f = 0x554A; /f将表示中文字符啊,表 2.3 常用的转义字符,4. 逻辑类型(布尔类型boolean,boolean仅有两种取值:true或false。因此仅有true与false两个字面值,分别代表逻辑值的“真”与“假”。 下面几行代码是布尔类型变量定义的示例: boolean b; b = true; boolean c = false; 下面的代码是错误的: boolean b; b = 1; /错误,不能用整数赋值 注意:上述错误是熟悉C语言的程序员容易发生的错误。,22,布尔型数据只有两个值true和false 它们不对应于任何整数值 false为缺省值 不能对boolean类型进行类型转换 示例: boolean b1, b2 = true;int int1,int2; while(int1=int2) while(b1=b2) / / ,JAVA中仅限boolean型能编译通过,C+中,若int2是一个非零值,那么这种赋值的结果肯定是true。 JAVA中编译出错,2.6 Java语言的构成,2.6.1 标识符(Identifier) 2.6.2 关键字 2.6.3 变量 2.6.4 常量 2.6.5 注释,问题1:,(1)需要“class”? (2)需要标识符? 错误到底在哪里?,2.6.1 标识符,标识符(Identifier)就是编程时用的名字,用以标识程序中出现的类名、方法名、变量名、类型名等。,public class Hello public static void Main (string args ) System.out.Println(“你好,很高兴学习Java“); ,标识符,1. 标识符命名规定 标识符可由字母、下划线、美元符号以及数字等字符组成,而且必须保证首字符不能是数字;,Public Class hello public static void Main (string args ) int _2ab, $2ab, 2ab; _2ab、$2ab是合法的标识符, 2ab则是一个非法的标识符。,标识符,1. 标识符命名规定 标识符区分大小写。,public class M_m public static void Main (String args ) System.out.println(“大小写要注意”) Main与main是两个不同的标识符。,public class 大小写 public static void main (String args ) System.out.println(“大小写要注意”); ,中文可以作为标识符。,2. 标识符使用Unicode字符集,Unicode字符集的前128个字符与ASCII码编码完全一致,因此Unicode是ASCII的扩展。,在Unicode字符集中,不仅包含了ASCII字符,而且还包含了中文、日语、韩语、阿拉伯等多国文字的字符。因此,这些非英文字符也可以出现在标识符中。比如,“您好”、“你好”、“说Hello”等都是合法的标识符,可以作为类名或变量名。,Java语言内部采用Unicode字符集,因此Unicode字符集中的大部分字符可以用来书写标识符。 Unicode字符集不同于ASCII字符集。 前者目前主要采用双字节(16比特)编码方式,可以最多表示216个(即65536个)字符, 而严格的ASCII码采用7比特编码方式,最多可表示27个(即128个)字符,命名风格统一规范可以增加程序的可读性,降低维护成本。Java语言推荐的标识符命名习惯如下: 类名:尽量用名词对类进行命名;类名中每个单词的首字母要大写,并且尽量不使用缩写形式 class Car class Student class GraduateStudent 方法名:尽量采用动词进行命名;方法名首字一般小写,以区别于类名或接口名;如果方法名由多个单词组成,那么第二个单词开始每个单词的首字母大写。比如: void run(); void connect(); boolean isConnected();,3.标识符的命名习惯,2.6.2 关键字,关键字一般具有特殊用途,而不能作为程序的标识符,public class KeyWord public static void main (String args ) int class=100; System.out.println(“class=“+class); ,关键字,1. 关键字(keyword) 关键字一般具有特殊用途,而不能作为程序的标识符。 如下所示:,35,关键字简单分类,数据和返回值类型:int, void, return 包/类/成员/接口:package, class, interface 访问控制:public, private, protected 循环及循环控制:if, switch, break 例外处理:throw, try, finally 保留词(无含义但不能使用):goto, const, 所有的关键字都是小写 const和goto是java的保留字。虽然指定goto作为关键字,但不支持它的使用,使程序简洁易读。,public Class KeyWord public static void Main (String args ) int goto=100; System.out.println(“goto=“+goto); ,类似于方法名的命名;变量名应该简短而有含义;尽量避免使用单个字符的变量,除非是作为临时用途的变量(字母i,j,k,m,n常作为整型临时变量名,而c、d、k常作为char类型的临时变量名)。比如: double speed; String studentName; int i;,2.6.3 变量:,变量,1变量声明与初始化 int var1; int a, b, c, d; double e, f, g; int a = 100; /声明变量a,并初始化为100 double b = 10.1; /声明变量b,并初始化为10.1 int c, d =111, e; /对d进行初始化,c与e没有赋初始值,2局部变量及其初始化,例 :局部变量的初始化问题 public class LocalVariableInitExample public static void main(String args) int a ; /局部变量a不自动初始化 System.out.print(a); /以上代码出错,a没有进行初始化或者赋值 ,局部变量是在某个方法体(或某个代码块)中声明的变量。 系统不会自动对局部变量进行默认初始化,因此必须显示初始化或赋值。,3变量名的命名 最好能够做到“见名知义”。 比如,计数变量可以命名为count。 变量名首字母最好小写,如果变量名需要多个单词表达,那么第二个单词起每个单词的首字母大写。 比如studentCount。 一个合法的变量名需要符合以下条件: 满足标识符的命名要求; 不能是关键字,也不能是true,false,null等具有特殊含义的字面值; 在同一个作用域内不能重名。,final变量类似于其它语言的常量。常用的final变量声明方式是: final数据类型 变量名=初始值; final变量的特点:声明并初始化后就不能修改。 final int max = 100; final int min = 1; max = 10; /错误,final变量初始化之后不可再赋值 如果final变量在声明时没有直接初始化,那么可以在后续代码中对它初始化一次(即赋值1次),但不能多次赋值。 final int max; / max在声明时没有直接初始化, max = 100; /正确, 第1次赋值可以初始化max max = 200; /错误,final变量初始化之后不可再赋值,public class Kw_final public static void main (String args ) final int var=100; var+; System.out.println(“var=“+var); ,2.6.4 常量:,final关键字 这些常量标识符的所有字母大写;如果是多个单词,那么用下划线连接这些单词,以增加可读性。比如: final int MAX_LENGTH = 1000; final double MIN_VALUE = 10;,public class Kw_final public static void main (String args ) final int var=100; var+; System.out.println(“var=“+var); ,常量:,final关键字,final 修饰类 final类不能被继承 final方法 final方法不能被子类覆盖 final变量 final变量就是常量,注释是为源程序增加必要的解释说明的内容,其目的是提高程序的可读性,书写注释是编写程序的良好习惯。Java中有三种形式的注释: /* 注释部分 */ /* 注释部分 */ / 注释部分,2.6.5【注释】,注释的使用,package sample; import robocode.*; /* * MyFirstRobot - a sample robot by Mathew Nelson * * Moves in a seesaw motion, and spins the gun around at each end */ public class MyFirstRobot extends Robot /* * MyFirstRobots run method - Seesaw */ public void run() while (true) ahead(100); / Move ahead 100 turnGunRight(360); / Spin gun around back(100); / Move back 100 turnGunRight(360); / Spin gun around ,2.6.6 基本数据类型之间的转换,1. 自动类型转换 目标类型的取值范围总是比被转换的类型取值范围大,也称为基本类型自动转换(widening primitive conversion)。,1. 自动类型转换 2强制类型转换,自动转换的例子代码: byte a = 12; short b = a; /将byte类型自动转换为short类型 char c = 啊; int d = c; /将char类型自动转换为int类型 long e = d; /将int类型自动转换为long类型 float f = e; /将long类型自动转换为float类型 double g = f; /将float类型自动转换为double类型,自动转换可能发生的精度损失问题 int i = 123456789; float j = i; System.out.println(j); /输出1.23456792E8,损失了精度。,问题accuracy_1: 精度损失问题,public class accuracy_1 public static void main (String args ) int i = 123456789; float j = i; System.out.println(j); ,问题accuracy_2:自动类型转换失败,public class Accuracy_2 public static void main (String args ) short k=2;char ch=H+k; System.out.println(“H+k=“+ch); ,取值范围不同,不可自动转换。,自动转换原则,取值范围不同,不可自动转换。 char_byte;char_short char (0216-1(65535)byte(-2727-1)/(-128127) char (0216-1(65535)short(-215215-1)/(-3276832767) 所以可自动转换的前提是,从小到大:shortint,byteshort,charint,2强制类型转换 如果待转换数据类型的取值范围没有包含于目标类型的取值范围,那么需要强制类型转换,也称为基本类型窄化转换(narrowing primitive conversion) long a = 10L; int b; b = (int)a; / (int)a将a的值由long类型强制转换为int类型。 char c = (char)a; / (char)a将a的值强制转换为char类型。 byte d = (byte)a; / (byte)a将a的值强制转换为byte类型。 double e = 123.45; int f = (int)e; / (int)e将e的值强制转换为int类型。,强制类型转换问题:数据截断与符号丢失。,强制转换带来的问题 import java.util.*; public class TypeCastExample public static void main(String args) int a = (int)123.45; / 将小数转换为int类型,会丢失小数部分, System.out.println(a);/转换后a的值为123, short b = (short)0x12345678; /丢失高位的两个字节(含符号位) System.out.println(b);/b的值为0x5678,十进制输出是22136 byte c = (byte)255;/丢失高位的三个字节(包括符号位) System.out.println(c);/c的值为0xff,十进制输出是-1 byte d = (byte)128;/丢失高位的三个字节(包括符号位) System.out.println(d);/d的值为0x80,十进制输出是-128 ,3. 隐含强制转换 byte a = 12; / 将int型的12隐含转换为byte型 short b = 12345; /将int型12345隐含转换为short型 char c = 97; / 将int型的97隐含转换为char型 JAVA中做了优化,只要int类型常量值属于byte,char,short的取值范围内,JAVA编译器自动进行隐含强制转换。 以下代码会出错: byte a; int b = 12; a = b; / 出错,需要更正为a = (byte) b;,2.8 运算符、表达式,本章导读 1. 算术运算符和算术表达式 2.赋值运算符与赋值表达式 3.关系运算符与关系表达式 4.逻辑运算符与逻辑表达式 5. 位运算符 6. 其他:条件运算符、instanceof 运算符.,1、算术运算符和算术表达式,(1)加减运算符 加减运算的结合性是从左到右。加减运算的操作元是 整型或浮点型数据,加减运算符的优先级是4级。 (2)乘、除和求余运算符 乘、除和求余运算的运算符号为*、/、%,都是双目运 算符。*、/、%运算符的结合性是从左到右,例如: 2*3/8,先计算2*3,然后再将得到的结果除以8。乘、除 和求余运算的操作元是整型或浮点型数据。*、/、%运 算符的优先级是3级。,区别:模运算符%,模运算符%,其运算结果是整数除法的余数。它能像整数类型一样被用于浮点类型(这不同于C/C+ ,在C/C+ 中模运算符%仅仅能用于整数类型)。下面的示例程序说明了模运算符%的用法: class Modulus public static void main(String args) int x = 42; double y = 42.25; System.out.println(“x mod 10 = “ + x % 10); System.out.println(“y mod 10 = “ + y % 10); ,输出如下: x mod 10 = 2 y mod 10 = 2.25,(3)自增、自减运算符 自增、自减运算的运算符号为:+、-,都是单目运算符,运算符的优先级是2级。运算符可以放在操作元之前,也可以放在操作元之后,但操作元必须是一个整型或浮点型变量(不能是常量或表达式,建议不要在其他表达试中使用+自找麻烦JAVA核心技术卷I:原理(原书第5版)。,:算术混合运算的精度,(4)算术表达式 用算术符号和操作元连接起来的符合Java语法规则的式子,称为算术表达式。如 x+2*y-30+3*(y+5) -12+n+(-n)。 (5)算术混合运算的精度 精度从“低”到“高”排列的顺序是: byte short int long float double Java将按运算符两边的操作元的最高精度保留结果的精度,例如:5/2的结果是2,要想得到2.5,必须写成5.0/2或5.0f/2。,59,算术混合运算的精度,char,int,short,byte,float,long,double,char型数据和整型数据运算结果的精度是int。,public class Accuracy public static void main (String args ) byte k=18;char ch=(H+k); System.out.println(“H+18=“+ch); ,2、赋值运算符与赋值表达式,1、赋值运算符:=。 赋值运算符是双目运算符,左面的操作元必须是变量,不能是常量或表达式。 2、普通赋值 x = y; x = (y=10); / (y=10)表达式的值是10,3 运算赋值 X op= Y 相当于 X = (X的类型)(X op Y) 不用强制转换,比如 char c = a; c = c+1; /会出错? (答:会,需要强制转换) c +=1 ; /会出错吗? (答:正确,因为c +=1相当于c = (char)( c+1); ),2、赋值运算符与赋值表达式,3、关系运算符与关系表达式,关系运算表达式的返回结果类型只能取值为true或false, 不同于C语言,C语言关系运算结果一般用1表示真,用0表示假。 例 关系运算示例,例 关系运算示例,/例 关系运算示例 public class RelationalOperatorExample public static void main(String args) boolean b = 10 8; / 关系运算10 8的返回值为? /答:true,所以b将被赋值为true System.out.println(b); /输出? /答:true boolean c = 10 8; / 关系运算10 8的返回值为false,所以b将被赋值为false System.out.println(c); /输出false ,逻辑运算的操作数是boolean类型 逻辑运算符“&”和“|”有时也称做“短路”逻辑运算符: 对于(op1&op2)运算,如果op1的值是false,那么(op1&op2)的计算结果必定是false,所以在运算时不会去计算op2的值。 对于(op1| op2)运算,如果op1的值是true,那么(op1|op2)的结果必定是true,所以运算时不会去计算op2的值。 例 短路逻辑运算的示例,4、逻辑运算符与逻辑表达式,例 “短路”逻辑运算示例,/例 短路逻辑运算的示例 public class LogicalOperatorExample public static void main(String args) int x = 1, z = 2; if(false /是否执行? /答:输出z的值,即输出2 ,5、位运算符5.1、按位逻辑,1. 整数类型的位运算 按位与:如果操作数op1和op2的第i位同时为1,那么op1 & op2的第i位为1,否则为0。 按位或:如果操作数op1和op2的第i位同时为0,那么op1 | op2的第i位为0,否则为1。 按位异或:如果操作数op1和op2的第i位互不相同,那么op1 op2的第i位为1,否则为0。 按位取反:如果操作数op的第i位为0,那么op第i位为1,否则为0。,问题: (1)按位与: 2 & ? 能让结果仍然是2,问题: (2)按位或: 2 & ? 能让后指定位置置1,比如后四位,问题: (3)按位异或: 2 & ? 能让指定位置置反,比如后4位,问题: (4)按位非: 2 & ? 能让每个二进制位置反,0000 0000 0000 0000 0000 0000 0000 1111,15,例 整数类型的位运算示例,获取指定二进制位的值,15,0000 0000 0000 0000 0000 0000 0000 1111,15,返回,将指定二进制位置为1,0000 0000 0000 0000 0000 0000 0000 1111,将指定二进制位置反,将每个二进制位置反,2. boolean类型的位运算 按位与:如果操作数op1和op2均为true,那么op1 & op2的值为true,否则为false 按位或:如果操作数op1和op2均为false,那么op1 | op2的值为false,否则为true。 按位异或:如果操作数op1和op2的值互不相同,那么op1 op2的值为true,否则为false。,例 布尔类型的位运算示例,3. 按位异或运算的特点 a a = 0,即操作数和自身进行按位异或,运算结果为0 a 0 = a,即操作数和0进行按位异或,运算结果为该操作数本身 a b b = a,即操作数和同一个数字进行两次按位异或,运算结果为其本身。,例 按位异或运算示例(应用于加密解密),class Example public static void main(String args) char a=金,木,水,火,土; char secret=z; for(int i=0;ia.length;i+) ai=(char)(aisecret); System.out.printf(“密文:n“); for(int i=0;ia.length;i+) System.out.printf(“%3c“,ai); for(int i=0;ia.length;i+) ai=(char)(aisecret); System.out.printf(“n原文:n“); for(int i=0;ia.length;i+) System.out.printf(“%3c“,ai); ,例,5、位运算符5.2、位移操作,例 移位运算示例 1实际移动的位数 如果n为long类型,那么移动位数是s%64,即移动位数是s对64求余。比如,100L65实际上等同于100L1 如果n为int、byte、short、char等类型,那么移动位数是= op2%32,即移动位数是s对32求余。比如,10033实际上等同于1001,2移位运算的含义 假设表 2.5中的各种移位运算实际移动的位数是s,即s不需要再求余了。那么, 对于左移运算,n s 相当于 n/2s,即有符号右移s位,相当于整除2s;但是需要注意,若n为负数,那么n s 的值的最大值是-1,即n s 的值不可能出现零。 比如,10 2 相当于10/22,即有符号右移2位,相当于整除22。但是 -2 7不为零,而是-1。,(1)左移位运算符 假设a是一个被移位的整型数据,n是位移量。 an运算的结果是通过将a的所有位都左移n位,每左移一个位,左边的高阶位上的0或1被移出丢弃,并用0填充右边的低位。,注意点,利用每次左移都可以使原来的操作数翻倍的特点,写程序时可以用此来进行快速的2 的乘法 但如果将1移进高阶位(31或63位),那么该值将变为负值。下面的程序说明了这一点:,class MultByTwo public static void main(String args) int i; int num = 0xFFFFFFE; for(i=0; i4; i+) num = num 1; System.out.println(num); ,程序输出结果: 536870908 1073741816 2147483632 -32,初值经过仔细选择,以便在左移 4 位后,它会产生-32。正如你看到的,当1被移进31 位时,数字被解释为负值,(2)右移位运算符 an运算的结果是通过将a的所有位都右移n位,每右移一个位,右边的低阶位被移出丢弃,并用0或1填充左边的高位,a是正数用0填充,负数时用1填充。 如果n是正数,n s 相当于 n/2s,即有符号右移s位,相当于整除2s; 但是需要注意,若n为负数,那么n s 的值的最大值是-1,即n s 的值不可能出现零。,-5/2=? 答: -2,byte a = 10; a = a 1; /编译会出错吗? /答:会出错,需要强制转换 对于byte或short型数据,an的运算结果是int型精度。 X op= Y 相当于 X = (X的类型)(X op Y) 不用强制转换,比如: a = 1; /会出错吗? /答:正确,因为a = 1相当于a = (byte)( a 1); 了,例,import java.util.*; public class Example public static void main (String args ) Scanner reader=new Scanner(System.in); System.out.println(“输入待移位的int型整数:“); int x = reader.nextInt(); System.out.println(“输入移位量:“); int n = reader.nextInt(); System.out.println(“左移位的结果:“+(xn); ,6、 其它常用的运算符,1. “?”条件运算: op1 ? op2 : op3 2. new运算符 new int10; /创建长度为10的int类型数组 new String(“Hello”); /创建一个内容为Hello的字符串对象 3. “.”运算符:主要用于访问对象或类的成员方法与成员变量 4. “ ”运算符:用于数组操作 5. instanceof运算符:判断对象是什么类型,7.运算符优先级与结合性,表2-12 JAVA语言中运算符的优先级与结合性,8. Math类,在类的章节中统一介绍,2.9 语句,2.9.1 语句简述 2.9.2 分支语句 2.9.3 循环语句 2.9.4 控制转移语句,2.9.1 语句简述,复合语句代码块(Block) 代码块类似于复合语句。代码块通过一对花括号“ ”将若干语句组合使用(包括局部变量声明语句、局部类声明语句)。 表达式语句 表达式语句以分号“;”结束,即在各种表达式后面加上分号,构成一个表达式语句,包括赋值语句、方法调用语句、对象创建语句、变量声明语句等。 控制相关语句 控制程序流程的语句,包括分支语句、循环语句、控制转移语句等。 异常处理语句 异常处理语句包括try-catch-finally语句(用于程序的异常处理),以及throw语句(用于抛出异常对象)。 包语句与导入语句 用于说明某个类或接口属于哪个包,或从哪个包导入。,2.9.2 分支语句,1. if语句 例 if语句运算示例 2. switch-case分支语句 例 switch-case语句示例 switch表达式值的类型一般是char、byte、short、int等整数类型,也可以是Character、Byte、Short、Integer等类型。 如果某个case省略break,那么会继续下一个case判断。 如果default省略,那么可能不会有任何一个case被执行(如果所有case值都不匹配)。,例 if语句运算示例,程序解析 输入百分制成绩,屏幕输出 A(= 90),B(=80),C(=70),D(=60),E(60),例 if语句运算示例,/例 if语句运算示例 import java.util.Scanner; public class IfStatementExample public static void main(String args) Scanner scanner = new Scanner(System.in); System.out.println(“请输入你的成绩:“); int score; if(scanner.hasNextInt() sc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论