Java -- 键盘输入 Scanner, BufferedReader。 系统相关System,Runtime。随机数 Randrom。日期操作Calendar
1. Scanner 一个基于正则表达式的文本扫描器,他有多个构造函数,可以从文件,输入流和字符串中解析出基本类型值和字符串值。
public class Main {
public static void main(String[] args) throws FileNotFoundException {
Scanner input = new Scanner(System.in); //键盘输入
input.useDelimiter("\n"); //设置分隔符
while(input.hasNext())
{
String tempStr = input.next();
if(tempStr.equals("quit"))
break;
else
System.out.println("log1: " + tempStr);
}
while(input.hasNextLine())
{
String tempStr = input.nextLine();
if(tempStr.equals("quit"))
break;
else
System.out.println("log2: " + tempStr);
}
Scanner input2 = new Scanner(new File("/media/123.txt")); //文件输入
while(input2.hasNextLine())
{
System.out.println("FileLine: " + input2.nextLine());
}
}
}
2. Bufferedreader 是IO流中的一个字符包装流,必须建立在字符流的基础上,System.in 为字节流,需要InputStreamReader将其包装字符流。
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
String input2 = null;
while( (input2=buffer.readLine())!=null )
{
System.out.println("input2: " + input2);
}
比较两种键盘输入,不同的是Scanner还可以读入基本类型输入项,比如input.hasNextDouble(), 可以用Double tempStr = input.nextDouble(); 获得Double类型输入。
3. System 获取环境变量, Runtime获取运行时信息
Map<String, String> env = System.getenv(); //获取环境变量
for( String str : env.keySet() )
System.out.println(str + "=" + env.get(str)); Runtime rt = Runtime.getRuntime();
System.out.println(rt.availableProcessors()); //CPU个数
System.out.println(rt.freeMemory()); //空余内存
System.out.println(rt.totalMemory()); //总共内存
System.out.println(rt.maxMemory()); //最大内存
rt.exec("notepad.exe"); //windows下利用exec开启notepad
4. 产生随机数
使用Math 和 Randrom类均可以,使用Random伪随机数时构造种子选当前时间 .
System.out.println("random: " + Math.random()*10);
Random rd = new Random(System.currentTimeMillis());
System.out.println(rd.nextBoolean());
System.out.println(rd.nextDouble());
System.out.println(rd.nextFloat());
System.out.println(rd.nextInt());
5. 日期操作Calendar类
Calendar cd = Calendar.getInstance(); //抽象类
cd.setLenient(false); //设置容错性
System.out.println(cd.get(Calendar.YEAR));
System.out.println(cd.get(Calendar.MONTH) + 1);
System.out.println(cd.get(Calendar.DATE));
cd.set(2013, 11-1, 11);
System.out.println(cd.get(Calendar.YEAR));
System.out.println(cd.get(Calendar.MONTH) + 1);
System.out.println(cd.get(Calendar.DATE));
cd.add(Calendar.YEAR, 1);
System.out.println(cd.get(Calendar.YEAR));
System.out.println(cd.get(Calendar.MONTH) + 1);
System.out.println(cd.get(Calendar.DATE));
Java -- 键盘输入 Scanner, BufferedReader。 系统相关System,Runtime。随机数 Randrom。日期操作Calendar的更多相关文章
- 【转】Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历))
Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历)) 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog. ...
- Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历))
Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历)) 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog. ...
- java 键盘输入多种方法 .(转载)
一.java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象.常用的类有BufferedReader,Scanner. 实例程序: 1.利用 Scanner 实现从键盘读入int ...
- Java键盘输入的方法
转载:http://blog.csdn.net/u012249177/article/details/49586383 java输入的方法: import java.io.BufferedReader ...
- java 键盘输入多种方法
转! 分类: java学习2012-11-04 09:58 8427人阅读 评论(1) 收藏 举报 一.java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象.常用的类有Buf ...
- JAVA 键盘输入数组,输出数组内容和最大值、最小值
package shuzu; import java.util.Scanner; import java.util.Arrays; public class shuzu { /** * @param ...
- java 键盘录入(Scanner)
键盘录入(Scanner)• 键盘录入数据概述– 我们目前在写程序的时候, 数据值都是固定的, 但是实际开发中, 数据值肯定是变化的, 所以, 把数据改进为键盘录入, 提高程序的灵活性.• 如何实现键 ...
- vscode解决java无法输入(scanner)问题
vscode解决java无法输入问题 需要先安装java环境,->windows安装java 新建Test.java 输入代码 import java.util.Scanner; public ...
- java键盘输入方法-
字符串缓冲方式 BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); String line = null ...
随机推荐
- 自动化测试工具 - Unified Functional Testing
这几天跟自动化测试工具UFT耗上了... 网罗了下,居然有不少自动化测试工具,像Selenium,QTP(UFT前身),LoadRunner,真是只有想不到,没有人家办不到. 言归正传,记录下小白使用 ...
- simple_pool对象池——优化<二>
本文章由cartzhang编写.转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/55051570 作者:car ...
- [LeetCode] Remove Duplicates from Sorted Array II [27]
题目 Follow up for "Remove Duplicates": What if duplicates are allowed at most twice? For ex ...
- ASP.NET动态网站制作(15)-- SQL数据库(1)
前言:数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,用户可以对文件中的数据进行增.删.改.查.数据库有很多种类型,从简单的存储有各种数据的表格到能都进行海量数据存储的大型数据库 ...
- java getResourcesAsStream()如何获取WEB-INF下的文件流
getResourcesAsStream()来读取.properties文件,但是getResourcesAsStream()仅在java项目时能获取根目录的文件: 在web项目中,getResour ...
- 【BZOJ5037】[Jsoi2014]电信网络 最大权闭合图
[BZOJ5037][Jsoi2014]电信网络 Description JYY创建的电信公司,垄断着整个JSOI王国的电信网络.JYY在JSOI王国里建造了很多的通信基站.目前所有的基站都是使用2G ...
- android菜鸟学习笔记24----与服务器端交互(一)使用HttpURLConnection和HttpClient请求服务端数据
主要是基于HTTP协议与服务端进行交互. 涉及到的类和接口有:URL.HttpURLConnection.HttpClient等 URL: 使用一个String类型的url构造一个URL对象,如: U ...
- Devexpress GridView 常用操作总结
一:Clone返回新的 DataTable Clone返回新的 DataTable,与当前的 DataTable 具有相同的架构:Copy:返回新的 DataTable,它具有与该 DataTable ...
- POJ 2993 Emag eht htiw Em Pleh【模拟画棋盘】
链接: http://poj.org/problem?id=2993 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=27454#probl ...
- 不怕慢 就怕站 不怕单线程 不怕 裸露ip
import sys import os import requests import threading from time import sleep from bs4 import Beautif ...