- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
09 第九课:基于文本的应用
第九课:基于文本的应用 周甫 zoofchow@ 学习目标 学习目标 1 程序交互的几种方式 程序在运行的时候,我们要给程序输入数据,程序根据输入的数据作出响应。 常见的输入方式有: 命令行参数 系统属性 标准的输入 从文件读入 实例分析 1 问题的描述: 通过命令行参数给程序输入数据 解决方案: 当一个Java应用程序从终端启动时,用户可以提供零个或多个命令行参数。这些命令行参数都是字符串,这些字符串可以是独立的记号(如:arg1),也可以是引号之间的多个符号(another arg)。参数序列跟在程序类的名字后面输入;然后被存放在String 对象的数组中,传递给main 方法。 实例分析 1(续一) 代码如下: class TestArgs { public static void main(String[] args) { for (int i = 0; i args.length ; i++) { System.out.println(args[i]); } } } 实例分析 1(续二) 结果 实例分析 2 问题描述: 通过系统属性给程序传入数据 解决方案: 系统属性是另外一种在运行时向程序传递参数的机制。每个属性都是一个属性名和属性值的映射对。属性名和属性值都是字符串。Properties 类表示这样的映射。System.getProperties方法返回系统的属性对象。System.getProperties(String)方法返回String属性的值。 System.getProperties(String, String)方法允许你在属性名不存在时返回默认值。你可以使用递归调用PropertyNames方法遍历全部属性名的集合;对每个属性名调用getProperty方法得到所有属性的值。 实例分析 2(续一) 代码如下: import java.util.*; class TestSP{ // System Properties public static void main(String[] args) { Properties p=System.getProperties(); //第4行 Enumeration e=pertyNames(); //第5行 while(e.hasMoreElements()){ String name=(String)e.nextElement(); if(name.equals(aaa)) { String value=p.getProperty(name); System.out.println(name: +name+ value: +value); } } } } 分析:第4行取得系统属性的集合,第5行从属性集合中得到属性名的枚举. 实例分析 2 (续二) 结果: 运行: java -Daaa=345 TestSP //-D后面是属性的名字,=后面是属性的值 ,注意是大写的D 实例分析 3 问题描述: 标准的输入 解决方案: 多数应用都会发生人机交互。人机交互经常通过控制台文本输入/输出来完成。 Java 2 SDK 用公有类java.lang.System支持控制台I/O。 System.out是一个PrintStream对象,它指向运行Java应用程序的终端窗口。 System.in是一个InputStream对象,它指向用户的键盘。 实例分析 3(续一) 代码: import java.io.*; class TestKI //Keyboard Input { public static void main(String[ ] args) { String s; //进行字符串的包装,就可以读取一行字符串 InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); System.out.println(按 ctrl+c 键或者输入exit 退出程序!); 实例分析 3(续二) try { s = br.readLine( ); while( s != null !s.equals(exit) ) { System.out.println(Read: + s); s = br.readLi
文档评论(0)