由于近期学的内容实际操作比較多,所以新的笔记就用代码为主体吧!

本回主要内容是输入,Java中主要用Scanner类和BufferedReader。整体来说不难,但有些细节能够总结,看代码:

import java.io.*;
import java.util.Scanner;
public class ioTest
{
public static void main(String[] args)
throws Exception
{ //Scanner提供了多种构造器,不同的构造器能够接受文件、输入流、字符串作为数据源
//用于从中提取解析出基本类型值和字符串值 //此处System.in代表键盘输入
Scanner sc = new Scanner(System.in);
//默认是空格,使用正則表達式
sc.useDelimiter("\n");
//hasNextXxx(),xxx不写时,默觉得字符串
//有下一项则返回true,但若没有下一项则并不一定返回false,也有可能被堵塞,此处为堵塞
while(sc.hasNext())
{
//输出输入项
String next = sc.next();
if(next.equals("exit")) break;
System.out.println("键盘输入的内容是"+ next);
} String s = "hello cer";
Scanner ss = new Scanner(s);
//此处返回false
while(ss.hasNext())
{
System.out.println("字符串的内容是:"+ss.next());
} //总是读取String对象
BufferedReader br = new BufferedReader (new InputStreamReader(System.in));
String line = null;
while((line = br.readLine()) != null)
{
System.out.println("用户键盘输入是:"+ line);
}
}
}

输出结果:

$ java ioTest

cer

键盘输入的内容是cer

exit

字符串的内容是:hello

字符串的内容是:cer

test String

用户键盘输入是:test String

正如凝视写的一样,对键盘输入的Scanner的hasNext(),在没有下个token的时候,会block的特性,更加有用。

Java自注三进入的更多相关文章

  1. Java实习生常规技术面试题每日十题Java基础(三)

    目录 1.是否可以从一个static方法内部发出对非static方法的调用? 2.Integer与int的区别? 3.Overload和Override的区别.参数列表相同,返回值不同的方法,是否是重 ...

  2. java面向对象(三)

    java面向对象(三) 1.四种权限修饰符 public > protected > (default) > private 注意:(default)并不是关键字default,而是 ...

  3. Hibernate 系列 07 - Hibernate中Java对象的三种状态

    引导目录: Hibernate 系列教程 目录 1. Java对象的三种状态 当应用通过调用Hibernate API与框架发生交互时,需要从持久化的角度关注应用对象的生命周期. 持久化声明周期是Hi ...

  4. 0038 Java学习笔记-多线程-传统线程间通信、Condition、阻塞队列、《疯狂Java讲义 第三版》进程间通信示例代码存在的一个问题

    调用同步锁的wait().notify().notifyAll()进行线程通信 看这个经典的存取款问题,要求两个线程存款,两个线程取款,账户里有余额的时候只能取款,没余额的时候只能存款,存取款金额相同 ...

  5. Hibernate中Java对象的三种状态

                                                                                     Hibernate中Java对象的三种 ...

  6. Java设计模式(三) 抽象工厂模式

    原创文章,同步发自作者个人博客,转载请注明出处 http://www.jasongj.com/design_pattern/abstract_factory/ 抽象工厂模式解决的问题 上文<工厂 ...

  7. Java进阶(三)多线程开发关键技术

    原创文章,同步发自作者个人博客,转载请务必以超链接形式在文章开头处注明出处http://www.jasongj.com/java/multi_thread/. sleep和wait到底什么区别 其实这 ...

  8. Java多线程的三种实现方式

    java多线程的三种实现方式 一.继承Thread类 二.实现Runnable接口 三.使用ExecutorService, Callable, Future 无论是通过继承Thread类还是实现Ru ...

  9. OID,主键生成策略,PO VO DTO,get和load区别,脏检查,快照,java对象的三种状态

    主键生成策略 sequence 数据库端 native 数据库端 uuid  程序端 自动赋值 生成的是一个32位的16进制数  实体类需把ID改成String 类型 assigned  程序端 需手 ...

随机推荐

  1. uVa 714 (二分法)

    Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu   Description   Before th ...

  2. gmake使用注意

    今天使用gmake把sgml变成html的时候出现了无法找到gmake的困惑(本人linux为ubuntu15.04),上网搜索发现: gmake是GNU Make的缩写.Linux系统环境下的mak ...

  3. [Swust OJ 137]--波浪数(hash+波浪数构造)

    题目链接:http://acm.swust.edu.cn/problem/137/ Time limit(ms): 1000 Memory limit(kb): 65535   Description ...

  4. BZOJ 1798: [Ahoi2009]Seq 维护序列seq( 线段树 )

    线段树.. 打个 mul , add 的标记就好了.. 这个速度好像还挺快的...( 相比我其他代码 = = ) 好像是#35.. ---------------------------------- ...

  5. 使用Maven打包项目并上传到Linux服务器

    Maven打包: 项目右键Run as-->Maven build...-->  出来下面的界面,注意红色部分的填写,Goals填写package表示打包,下面的Skip Tests表示打 ...

  6. Android Bluetooth开发

    原文地址:http://developer.android.com/guide/topics/wireless/bluetooth.html 翻译:jykenan 更新:2012.06.19 Andr ...

  7. linux下的二进制文件的编辑和查看

    linux下的二进制文件的编辑和查看 http://blog.csdn.net/wangxiaoqin00007/article/details/6618003 一.在Linux下查看二进制文件的软件 ...

  8. 网页制作之html基础学习3-css样式表

    样式:CSS(Cascading Style Sheets,层叠样式表),作用是美化HTML网页. 在样式里面用 /*  */ 进行注释. 1.样式表的基本概念 1.1.样式表分类 1.内联样式表 和 ...

  9. [置顶] Android源码分析-点击事件派发机制

    转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17339857 概述 一直想写篇关于Android事件派发机制的文章,却一直没 ...

  10. Union - Find 、 Adjacency list 、 Topological sorting Template

    Find Function Optimization: After Path compression: int find(int x){ return root[x] == x ? x : (root ...