第一章 Java简介与开发环境的搭建

Similar documents
C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

JAVA 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:/

Microsoft Word - 正文.doc

第3章 Java语言基础

Chapter 9: Objects and Classes

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

JavaIO.PDF

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

EJB-Programming-4-cn.doc

Guava学习之Resources

while ((ch = fr.read())!= -1) { System.out.print((char) ch); fr.close(); 例 3: 用 BufferedReader 读 TXT 文件 public class FileReaderDemo3 { public static v

暨南大学本科实验报告专用纸

3.1 num = 3 ch = 'C' 2

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

untitled

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点


OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

OOP with Java 通知 : Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢

OOP with Java 通知 : Project 2 提交时间 : 3 月 15 日晚 9 点

Microsoft Word - sy09_实验09_字符串和文本IO.docx

Microsoft Word - 01.DOC

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

软件工程文档编制

关于快速直达轨道轿车公交体系的研究及可行性

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

Microsoft Word - 新1-12.doc

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

chp6.ppt

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

《大话设计模式》第一章

untitled

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]

個 人 的 手, 拉 著 瞎 子 的 手 把 他 帶 往 村 外 的 時 候, 對 於 瞎 子 來 講, 那 個 人 的 手 和 耶 穌 的 手 有 沒 有 區 別? 沒 有! 為 什 麼 沒 有 區 別? 因 為 對 於 一 個 瞎 子 來 說, 手 和 耳 朵 就 是 他 接 觸 世 界, 瞭

使用MapReduce读取XML文件

Chapter 9: Objects and Classes

untitled

C/C++程序设计 - 字符串与格式化输入/输出

Java ¿ª·¢ 2.0: Óà Hadoop MapReduce ½øÐдóÊý¾Ý·ÖÎö

《计算概论》课程 第十九讲 C 程序设计语言应用

chap07.key

<4D F736F F D20BAF4BADEA457BDD2B1D0A7F75F4A415641B57BA6A1B2D52E646F63>

java2d-4.PDF

untitled

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

javaexample-02.pdf

untitled

untitled

untitled

C/C++ - 文件IO

untitled

Microsoft Word - ch04三校.doc

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

附录J:Eclipse教程

内容介绍 6.1 任务预览 6.2 异常 6.3 异常种类与层次结构 6.4 异常处理代码块 try-catch-finally 6.5 throw 语句与 throws 子句 6.6 自定义异常类 6.7 异常处理代码块嵌套 6.8 错误与断言 6.9 本章小结 6.10 实训 6: 除法运算程序

概述

CC213

Microsoft PowerPoint - course2.ppt

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

C/C++ 语言 - 循环

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点

Microsoft Word - 投影片ch03

新版 明解C++入門編

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检

51 C 51 isp 10 C PCB C C C C KEIL

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

Java

ebook45-5

尽 管 Java 语 言 是 在 C++ 语 言 基 础 上 发 展 起 来 的, 但 与 C++ 不 同,Java 是 一 种 纯 粹 的 面 向 对 象 语 言 (Object-oriented language) 在 Java 世 界 中, 所 有 事 物 都 是 Object 1. 通 过

EJB-Programming-3.PDF

untitled

電機工程系認可證照清單 /7/1

四川省普通高等学校

(HMI) IO A

Java 程式設計初階 第 5 章:基本輸出入 & 流程控制

JAVA String常用APi

bnb.PDF

第1章

96年特種考試第一次司法人員考試試題解答

尽 管 Java 语 言 是 在 C++ 语 言 基 础 上 发 展 起 来 的, 但 是 有 别 于 C++,Java 是 一 种 纯 粹 的 面 向 对 象 语 言 (Object-oriented language) 在 像 Java 这 样 纯 粹 的 面 向 对 象 语 言 中, 所 有

设计模式 Design Patterns

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

Microsoft Word \.U.e.~.g...X...doc

大 綱 背 景 解 決 之 道 文 獻 探 討 建 置 貝 氏 網 路 研 究 結 果 結 論 2

3.1 Java 的数据类型 Java 支持以下四种不同的数据类型 : 基本数据类型 数组类型 类类型 接口类型 标识符 标识符可由编程者自由指定, 但需要遵循一定的编程约定 : 标识符可由字母 ( 包括 A-Z a-z 汉字 日文片假名 平假名 朝文 ) 数字和两个特殊字符下划线 (_

4 CHAPTER 基本輸出入 JAVA

Swing-02.pdf

无类继承.key

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2

untitled

D C 93 2

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指

Transcription:

第二章 Java 语法基础 实验目的 (1) 常量 变量与数据类型 a. 掌握 Java 的常量 变量声明及使用方法 b. 掌握 Java 各种数据类型的使用 c. 掌握基本的输入输出函数 (2) 运算符与表达式 a. 掌握算术运算 关系运算 逻辑运算, 及优先关系 b. 了解位移运算的使用方法 c. 掌握表达式的使用 (3) 常用系统类 a. 基本输入输出类的使用 b. 掌握 Math 类的使用 c. 了解时间类 Date 和 Calendar 的使用 实验范例 1 数据类型范例 public class DataTypeDemo { public static void main(string args[]) { byte b = 0x55; short s = 0x55ff; int i = 1000000; long l = 0xffffL; char c = 'a'; float f = 0.23F; // 此行 0.23 后的 F 可否去掉, 为什么? double d = 0.7E-3; boolean B = true; String S = " 这是字符串类数据类型 "; // 可否将 0.7E-3 变换为另一种等值方式来表示 System.out.println(" 字节型变量 b = " + b); System.out.println(" 短整型变量 s = " + s); System.out.println(" 整型变量 i = " + i); System.out.println(" 长整型变量 l = " + l); System.out.println(" 字符型变量 c = " + c); System.out.println(" 单精度变量 f = " + f); System.out.println(" 双精度变量 d = " + d); System.out.println(" 布尔型变量 B = " + B); System.out.println(" 字符串类对象 S = " + S);

2 运算符与表达式 (1) 数值运算范例 public class NumCalcDemo { public static void main(string args[]) { int a = 8, b = 5; // 除法运算 System.out.println( a+"/"+ b +" = " + a/b); System.out.println( a+"/"+(-b)+" = " + a/-b); System.out.println(-a+"/"+ b +" = " + -a/b); System.out.println(-a+"/"+(-b)+" = " + -a/-b); // 取模运算 System.out.println(a +"%"+ b +" = " + a%b); System.out.println(a +"%"+(-b)+" = " + a%-b); System.out.println(-a+"%"+ b +" = " + -a%b); System.out.println(-a+"%"+(-b)+" = " + -a%-b); // 自加运算 System.out.println(++a + "+" + b + "=" ++ +a + b); 会出现什么错误提示, 请修正 System.out.println(++a + "+" + b + "=" +(++a) + b); // 此行 System.out.println(a++ + "+(" + (-b) + ")=" + +(++a) + b); // 为使得输出的表达式正确, 此处应该怎么改 System.out.println(- ++a + "+" + b + "=" + - ++a + b); System.out.println(- a++ + "+" + (-b) + "=" + -a++ + -b); (2) 移位运算范例 提示 : 输出二进制函数 Integer.toBinaryString() public class BitShiftDemo { public static void main(string args[]) { int a = -16, b = 16; System.out.println("a 的二进制为 :" + Integer.toBinaryString(a)); System.out.println("a<<1:" + Integer.toBinaryString(a<<1)); // 左移 1 位 System.out.println("a>>2:" + Integer.toBinaryString(a>>2)); // 右移 2 位 ( 带符号 ) System.out.println("a>>>2:" + Integer.toBinaryString(a>>>2)); // 右移 2 位 ( 无符号 ) System.out.println("b 的二进制为 :"+Integer.toBinaryString(b)); System.out.println("b<<1:" + Integer.toBinaryString(b<<1)); // 左移 1 位 System.out.println("b>>2:" + Integer.toBinaryString(b>>2)); // 右移 2 位 ( 带符号 )

System.out.println("b>>>2:" + Integer.toBinaryString(b>>>2)); // 右移 2 位 ( 无符号 ) (3) 关系运算与逻辑运算范例 public class OperationDemo { public static void main(string args[]) { int a = 25, b = 3; boolean d = a<b; System.out.println(a+"<"+b+" = "+d); int e = 3; d = (e!=0 && a/e>5); System.out.println(e+"!=0&&"+a+"/"+e+">5 = "+d); int f = 0; d = (f!=0 && a/f>5); System.out.println("d=" + d); d = (a/f>5 && f!=0); // 有错, 如何修正? System.out.println("d=" + d); 预备知识 1 控制台输出 Java 从控制台输出可使用以下方法 : System.out.print() System.out.println() 2 控制台输入 Java 从控制台输入的 3 种方式 : (1) 用 System.in.read() 获取 " 单个 " 字符 import java.io.*; // 导入 Input/Output 数据包 public class CharInputDemo { public static void main(string [] args) throws IOException// 抛出 IO 异常 { System.out.print("Enter a Char:"); char i = (char) System.in.read(); System.out.println("your char is :"+i); (2) 用 BufferedReader 类和 InputStreamReader 类获取 " 字符串 " import java.io.*;

public class StreamReaderDemo { public static void main(string [] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = null; System.out.println("Enter your value:"); str = br.readline(); System.out.println("your value is :"+str); (3) 使用 Scanner 类读入 " 字符串 " import java.util.*; // 导入 java.util 工具包 public class ScannerDemo { public static void main(string [] args) { Scanner sc = new Scanner(System.in); System.out.println(" 请输入你的姓名 :"); String name = sc.nextline(); System.out.println(" 请输入你的年龄 :"); int age = sc.nextint(); System.out.println(" 请输入你的工资 :"); float salary = sc.nextfloat(); System.out.println(" 你的信息如下 :"); System.out.println(" 姓名 :"+name+"\n"+" 年龄 :"+age+"\n"+" 工资 : "+salary); sc.close(); // 关闭输入流 注 :(1) (2) 需要抛出异常 :throws IOException (3) 比较灵活, 建议使用 3 常用系统类: java.lang 包 : String 类 Math 类 ( 使用方法请参考教材 Java 常用系统类 ),String 类使用实例在下一章介绍 Math 类常用方法 :abs exp floor log pow random round sin\cos\tan(asin\acos\atan) 例 : public class Prog1 { public static void main(string[] args) { double a = 1.5, b = 4, c = -3; System.out.println("floor=" + Math.floor(a)); // 求最大的整数, 但不大于本身 System.out.println("ceil=" + Math.ceil(a)); // 求最小的整数, 但不小于本身

System.out.println("round=" + Math.round(a)); // 四舍五入 System.out.println("sqrt=" + Math.sqrt(b)); // 平方根 System.out.println("abs=" + Math.abs(c)); // 绝对值 System.out.println("max=" + Math.max(a, b)); // 最大值 System.out.println("random=" + Math.random()); // 随机函数 System.out.println("exp=" + Math.exp(2)); // e 为底的指数函数 System.out.println("atan=" + Math.atan(1)); // 反正切函数 4 常用系统类:JAVA 的时间类 ( 注 : 1 如果只想作简单时间计算, 搞清楚 : 例 1 和例 4 即可 2 如果想了解 JAVA 语言对时间类的整体表示方式 及处理方式, 请全看 ) ( 一 ) JAVA 时间类相关的概念 1) java 中的时间类有 :Date 和 Calendar 2) java 中时间类的本质 long( 毫秒数 ) Date = long + 历法算法 ( 方法 geryear()) Calendar = long + 历法算法 ( 方法 ger()) 3) 时间的标准有两种 (1970)GMT long (0)UTC long 4) java 中基本的时间表示 GMT long 5) java 提供了 Date 类型表示时间和日期 Date 是 long 类型的包装 6) Calendar 是历法的抽象历法 : 公历, 农历, 太阳历 7) GregorianCalendar 是历法的实现, 采用公历的算法实现的 Calendar cal = Calendar.getInstance(); Calendar cal = new GregorianCalendar();// 除了日本和泰国, 效果等同于上一句 8) Date 和 Calendar 的默认值就是系统当前时间 ( 二 ) JAVA 中有关时间的计算一 java 中表示时间的方式 1) 格林威治时间 (GMT):1970 年 1 月 1 日 00:00:00( 注 : 中国是东八区, 所以要 +8 个小时 ) 也就是 1970 年 1 月 1 日 08:00:00 2 ) 公元元年 (UTC): 0 年 3 ) 目前 java 中 3 种日期表达方式 long, Date, Calendar 都在用 例 1:JAVA 中时间的表示 import java.util.calendar;

import java.util.date; import java.util.gregoriancalendar; public class LongDateDemo { public static void main(string[] args) { long now = System.currentTimeMillis(); long year = now / 1000 / 60 / 60 / 24 / 365 + 1970; System.out.println(year); // 一年地球绕太阳一圈 (365 天 +1/4 天 ) // 原点 ( 公元元年 ) /* * date.getyear() 是将 date 内部的 long 时间, 根据历法计算为年份, 返回值是 2 位数年份, 如 :1997 年返回 97, 但是过了 * 2K 年, 返回 3 位数年份, 如 2012 返回 112 */ // 老板本 Date date = new Date();// 默认是当前时间 (long) int y = date.getyear() + 1900; int month = date.getmonth() + 1; System.out.println(y + " 年 " + month + " 月 "); // 新版本 // Calendar 历法 Calendar cal = new GregorianCalendar();// 默认是当前时间 (long) y = cal.get(calendar.year);// 2012 month = cal.get(calendar.month) + 1;// 4 System.out.println(y + " 年 " + month + " 月 "); 二 时间类型转换 long <-> Date <-> Calendar ( 注 :long 类型与 Calendar 类型相互转换必须经过 Date 类型 ) long --->Date : dat = new Date(l) dat.settime(l) Date --->Calendar : cal.settime(dat) Calendar ---> Date: cal.gettime() Date ---> long :dat.gettime() 注 :Date dat, long l, Calendar cal 例 2: 时间类型转换 import java.util.calendar; import java.util.date; import java.util.gregoriancalendar; public class DateCaseDemo { public static void main(string[] args) { long gmt = 0;// 格林威治时间 1970/01/01

Date date = new Date(); date.settime(gmt);// 回到 1970 元旦, 相当于 long -->Date System.out.println(date.getYear() + 1900);// 1970 Calendar cal = new GregorianCalendar(); // date --> cal cal.settime(date);// 将 cal 设置为 date 的时间, 也是 1970 System.out.println(cal.get(Calendar.YEAR));// 1970 // date 和 cal,gmt 代表同一时刻 // 加 -1 天, 是在当前时间上加 -1 天, 就是减少 1 天, 就是减少 1 天的毫秒数 (1000*60*60*24) cal.add(calendar.day_of_year, -1); Date d = cal.gettime(); System.out.println(d);// 1969 long l = d.gettime(); System.out.println(l);// -86400000, 因为是在原点以前的时间 三 时间的输入与输出 1) 日期输出的本质是将 Date 转换为格式化的 String 2) 日期输入的本质是将格式化的 String 转换为 Date 3) SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 构建 SimpleDateFormat 一般提供日期的格式 "yyyy-mm-dd" 具体参看 javadoc 如 :"yyyy-mm-dd HH:mm:ss" "yyyymmdd" "dd/mm/yy" "MM/dd/yyyy" 常用方法 fmt.parse(string) 可以实现将 ( 合法 ) 字符串解析为日期类型, 经常用于处理日期输入 fmt.format(date) 可以把日期格式化为字符串用于输出处理使用字符串 String 输出时间 Date ---> String: DateFormat fmt = new SimpleDateFormat("HH:mm:ss"); fmt.format(date) 把字符串 String 时间转为 Date 时间 ( 个是必须相同 ) String --> Date : DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); fmt.parse("1999-2-2") 注 :java 没有提供 String 直接转换为 Calendar 的 API 方法, 但第三方提供的 API 有这种方法如果 Calendar 需要转为 String, 必须先转换为 Date Calendar ----> Date : Date dat = cal.gettime(); 例 3: 时间的格式化输入 / 输出

import java.text.parseexception; import java.text.simpledateformat; import java.util.date; public class DateIODemo { public static void main(string[] args) throws ParseException { Date date = new Date();// 当前时间, 当前毫秒数 // 输出 yyyy-mm-dd HH:mm:ss SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 将日期类型格式化为时间字符串 String str = fmt.format(date);// 日期格式化 System.out.println(str);// 当前日期 // 解析日期字符串为日期类型对象 String day = "2015-2-10"; SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd"); Date d = f.parse(day);// 将日期字符串解析为 Date 类对象 long l = d.gettime();// 将 Date 类对象解析为长整型值 System.out.println(fmt.format(d)); // 2015-2-10 String s = new SimpleDateFormat("yyyy-MM-dd").format(new Date()); System.out.println(s);// 当前日期 四 时间的计算时间计算的问题 : 1) 本质是时间毫秒数的计算 2) 简单时间计算, 直接计算毫秒数, 如 :3 天以后,2 小时等 3) 复杂时间计算, 利用 Calender 类提供的历法算法实现常用方法 : add() set() Calendar 提供的方法本是上也是计算毫秒数 例 4: 时间的计算问题 import java.text.simpledateformat; import java.util.calendar; import java.util.date; import java.util.gregoriancalendar; public class DateCalDemo { public static void main(string[] args) { // 简单时间计算 long l = System.currentTimeMillis();// 当前时间 l += 1000L * 60 * 60 * 24 * 3;// 3 天以后 SimpleDateFormat sdm = new SimpleDateFormat("yyyy-MM-dd"); String s = sdm.format(new Date(l)); System.out.println(s);

// 复杂时间计算 Calendar cal = new GregorianCalendar(); cal.add(calendar.year, 2);// 2 年以后 cal.set(calendar.month, Calendar.JANUARY);// 设置月份为 1 月 System.out.println(sdm.format(cal.getTime()));// 2 年以后的 1 月 练习题目 2-1. 判断输入的正整数是否既是 5 又是 7 的整倍数 若是, 则输出 yes; 否则输出 no 2-2. 对键盘输入的任意一个四位正整数, 计算各位数字平方和 如 :2345, 则 : 计算 2^2+3^2+4^2+5^2 2-3. 输入一个学习成绩 (0-100 之间的整数 ), 利用条件运算符的嵌套将成绩转换为等级题 : 学习成绩 > =90 分用 A 表示,60-89 分之间用 B 表示,60 分以下用 C 表示 *2-4. 在 main 函数中输入字符串, 计算这个字符串的长度 ( 字符数 ), 并输出其长度 ( 提示 : 用 s.length() 方法直接输出 ) *2-5. 在 main 函数中输入两个字符串, 将两个字符串连接起来并输出 ( 提示 : 用 s.concat() 方法直接输出 ; 也可以试一下 + 运算 ) 2-6. 显示网格 在屏幕上显示如下网格 ( 直接输出 ) +---+---+ +---+---+ 2-7. 求平方根 输入 1 个实数 x, 计算并输出其平方根 例 : 输入 1.21 输出 The square root of 1.21 is 1.1 ( 提示 : 用 Math.sqrt() 方法输出 ) 2-8. 计算旅途时间 输入 2 个整数 time1 和 time2, 表示火车的出发时间和到达时间, 计算并输出旅途时间 有效的时间范围是 0000 到 2359, 不需要考虑出发时间晚于到达时间的情况 例 : 括号内是说明输入 712 1411( 出发时间是 7:12, 到达时间是 14:11) 输出 The train journey time is 6 hrs 59 mins. 2-9. 数字加密 输入 1 个四位数, 将其加密后输出 方法是将该数每一位上的数字加 9, 然后除以 10 取余, 做为该位上的新数字, 最后将第 1 位和第 3 位上的数字互换, 第 2 位和第 4 位上的数字互换, 组成加密后的新数

例 : 括号内是说明输入 1257 输出 The encrypted number is 4601( 每一位上的数字加 9 除以 10 取余后, 得 0146, 交换后得到 4601) 2-10. 大小写字母转换 输入一个大写英文字母, 输出相应的小写字母 例 : 输入 G 输出 g ( 提示 : 用 System.in.read() 函数读入, 请参考 [ 预备知识 ]-> 控制台输入第 1 种方式 ) 2-11. 计算存款利息 输入存款金额 money 存期 year 和年利率 rate, 根据下列公式计算存款到期时的利息 interest( 税前 ), 输出时保留 2 位小数 interest = money(1+rate)^year - money 输入输出示例 : 括号内为说明输入 1000 3 0.025 (money = 1000, year = 3, rate = 0.025) 输出 interest = 76.89 2-12. 华氏温度转换成摄氏温度 转换公式 :c = 5/9(f-32). 2-13. 有 5 个人坐在一起, 问第五个人多少岁? 他说比第 4 个人大 2 岁 问第 4 个人岁数, 他说比第 3 个人大 2 岁 问第三个人, 又说比第 2 人大两岁 问第 2 个人, 说比第一个人大 两岁 最后问第一个人, 他说是 10 岁 请问第五个人多大? 2-14. 读取系统当前日期时间的长整型值, 计算对应的年份并输出 ; 利用 Date 类获取系统当 前日期时间, 计算对应的年份, 以 yy-mm-dd 格式输出日期 ; 利用 Calendar 类获取系统当 前日期时间, 计算对应的年份, 以 yyyy-mm-dd 格式输出日期 2-15. 计算当前据最近的五月一号还有多少天