尽展体育的魅力,创造历史辉煌!2008让我们为奥运加油,为中国加油!
 
  
  高级搜索
  首页   技术论坛   博客   产品中心   资源中心   银弹在线   商城  





Java学习第四堂课    
#1楼
给作者发送短消息 给作者发送短消息  
查看用户其他信息
总分 72 分
财富 66 goCom币
威望 1
排名 :(
段位 新手必读

Java学习第四堂课


回顾一下上节课,我们从键盘获取了一个输入,实现了与程序的互动,然而当我们要输入一行信息时候,比如   I LOVE THIS GAME的时候,系统显示给我们却只是一个 “I”,这是因为Scanner取得输入的键或者是回车键的时候,Scanner就会返回到下一个输入。依据是空格符,当输入为空格键,TAB。
    那怎么获取一个包含空格的输入呢?可以使用下面的方法:
import java.io.*;

public class Input{
public static void main(String[] args) throws

IOException{

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));
System.out.println("请输入一行文字,可以有空格:");

String str = br.readLine();

System.out.println(str);
}

}

    保存为Input.java文件后(注意这里,保存文件名必须与类名保持一致)编译并运行,就可以实现输入:
I LOVE THIS GAME
I LOVE THIS GAME

    下面来分析这段代码,首先出现了一个
import java.io.*;
    这里表明我们将要使用的这个类是放在java.io下面的某个包中的,*表示 所有内容,比如用到的BufferedReader和InputStreamReader都是java.io中的类。

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));
    上节课我们使用的获得输入的方法中定义了一个
Scanner s = new Scanner(System.in);
    这里可能会让人觉得迷惑,我们知道“=”前面的是定

义了一个引用变量br,后面呢new表示新建了一个BufferedReader对象,通过“=”把两者联系起来了,在上面一句中,我们定义了一个BufferedReader类型的对象,这个对象是以一个InputStreamReader 对象为基础建立的,而这个对象是以System.in为基础建立起来的,然后可以通过br来实现从键盘获取输入,System.in是我们从键盘获取输入的工具。

    这样说可能很难理解,还是举个例子:
    我们修路,需要使用泥土,于是用铁锹来挖泥土,但是我们不能用铁锹来运送泥土,于是用箩筐来运送,但是工程很大,只用箩筐远远不够,于是我们用卡车来装送,这样效率是不是很高了呢?
    BufferedReader就是这辆卡车,InputStreamReader就是箩筐,System.in才是直接获得输入的铁锹。String str = br.readLine();
    readLine()就是从键盘获取一行输入,可以包含空格的,直到我们敲下回车之前的内容都会保存在str里面,从最终的结果就很容易看出来了。

    再看看我们的main方法,发现后面跟了个throws IOException。这是因为BufferedReader可能会出现一个异常,异常是我们在以后会专门研究的东西,现在写出来只是先熟悉一下,还是拿刚才的例子来解释这个异常:
    我们的卡车可能在路上要经过一个桥,桥的载重是5t,但是我们的卡车却运了8t的东西,这个时候就会出现异常,于是我们事先声明:我们的车在路上可能会出现异常,要用的话出了问题就与我无关了。
    同样,我们的BufferedReader可能会出现问题,我们事先在这里申明了,就如在烟盒上写个:吸烟有害健康一样。
    当然,一般来说出异常不是那么容易的,只要我们认真处理,还是可以放心使用的。
    好的,那我们到底用什么获取输入呢,Scanner还是BufferedReared?暂时还是用Scanner吧,看起来BufferedReader 很麻烦,而且在后面还有一种情况很难获得输入,但是我们要知道在后面有一个专门的章节来研究输入输出,而所研究的内容都是BufferedReader的亲戚朋友,而且今后我们还可以用这样的流来读取文件内容、把内容写到文件里面去,这些都是Scanner做不到的。
    当然我们肯定不会满足于只是写一些东西让显示器显示给我们,所以我们再研究一下用JAVA去做做算术吧,计算两个数的和、差、积、商。

public class Count{
    public static void main(String[] args){
        int i = 9527;
        int j = 4527;
        int m = i - j;
        System.out.println(m);
        m = i*j;
        System.out.println(m);
        m=i+j;
        System.out.println(m);
        m=i/j;
        System.out.println(m);
    }
}

 

Re: Java学习第四堂课    
#2楼
给作者发送短消息 给作者发送短消息 实名会员 
查看用户其他信息
初级会员
 

Re: Java学习第四堂课    
#3楼
给作者发送短消息 给作者发送短消息 实名会员 
查看用户其他信息
总分 1231 分
财富 207 goCom币
威望 40
排名 第 50 名
段位 新手必读
 

Re: Java学习第四堂课    
#4楼
给作者发送短消息 给作者发送短消息 实名会员 
查看用户其他信息
总分 64 分
财富 205 goCom币
威望 21
排名 :(
段位 新手必读
 

Re: Java学习第四堂课    
#5楼
给作者发送短消息 给作者发送短消息 实名会员 商务会员 
查看用户其他信息
总分 2634 分
财富 2881 goCom币
威望 54
排名 第 79 名
段位 新手必读
 

Re: Java学习第四堂课    
#6楼
给作者发送短消息 给作者发送短消息 实名会员 
查看用户其他信息
总分 188 分
财富 418 goCom币
威望 24
排名 :(
段位 新手必读
鼓励,坚持,让我们共同学习,共同进步,把普元的理念发扬下去.
 

Re: Java学习第四堂课    
#7楼
给作者发送短消息 给作者发送短消息 实名会员 商务会员 
查看用户其他信息
总分 2634 分
财富 2881 goCom币
威望 54
排名 第 79 名
段位 新手必读
 




发表回复
账号用户名   密码   登录
内容:url email imgsrc image code quote
范例 Example
bold italic underline linethrough   


 [更多...]