Java中常用的输出语句有以下三种
1.System.out.println()
2.System.out.print()
3.System.out.printf()
System.out.println() 是最常用的输出语句,它会把括号里的内容转换成字符串输出到输出窗口(控制台),并且换行,当输出的是一个基本数据类型时,会自动转换成字符串,如果输出的是一个对象,会自动调用对象的toString()方法(1),将返回值输出到控制台
System.out.print() 与第一个很相似,区别就是上一个输出后会换行,而这个命令输出后并不换行。
输入输出体系介绍
什么是输入输出处理(IO)
包括对控制台,内存,文件,图形图像,网络和数据库的读写等。在Java语言中,java.io包就提供了
很多完成输入输出处理功能。
什么是流?
流是一种有序的字节源或目的,当程序需要读取数据时就要打开一个通向数据源的流;而当程序需要
写入数据的时候就会打开一个通向目的地的流,数据就好像在管道中流动一样。
流的分类
将流按三种方式分类:输入流和输出流,字节流和字符流,以及从一个特定地方读写的结点流和连接已经存在的流的过滤流。这种分类方式是相互重叠的
输入流和输出流
字节流和字符流
从一个特定地方读写的结点流和连接已经存在的流的过滤流
基本流的介绍
基本流一般是指
InputStream
OutputStream
Reader
Writer
1.InputStream
这个类是一个抽象类,为所有字节输入类的父类,其方法都是通过子类对象来调用的,主要方法有
2.OutputStream
这个类是抽象类,是所有字节输出类的父类,其方法都是通过子类对象来调用
3.字符输入输出系列(字符IO)
输入输出两大分支,以Reader为父类的字符输入,以Writer为父类的字符输出。它们与各自的子类共同构成了字符输入输出体系
字符输入输出
4.Reader
是一个用于读取字符类的抽象类,为所有字符输入类的父类,其方法都是通过子类对象来调用的。
5.Writer
是一个用于写入字符流的抽象类,为所有输出字符类的父类,其方法都是通过子类对象来调用的。
扩展:Java简介:
Java是一种计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言。希望用于控制嵌入在有线电视交换盒、PDA等的微处理器
1994年将Oak语言更名为Java
1998年JDK1.2时,更名为Java 2 Platform
分为标准版J2SE,企业版J2EE,微型版J2ME
Java 既安全、可移植,又可跨平台,而且人们发现它能够解决Internet 上的大型应用问题
Internet使Java成为网上最流行的编程语言
Java对Internet的影响也意义深远
B/S的兴起 &C/S的没落
任职于太阳微系统的詹姆斯•高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针,改以引用替换,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口替换,增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。太阳微系统对Java语言的解释是:“Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。”
Java不同于一般的编译语言或直译语言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。在早期JVM中,这在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的运行速度有了大幅提升。
与传统型态不同,Sun公司在推出Java时就将其作为开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是 Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,微软公司后来推出了与之竞争的.NET平台以及模仿Java的C#语言。后来Sun公司被甲骨文公司并购,Java也随之成为甲骨文公司的产品。
package 数据库测试import java.sql.*
/**
* @author qingsongwang
* @2008.11.16
*
* 说明:实现与数据库相连,取出数据库的内容显示
*/
public class JDBCTest
{
//主函数main()
public static void main(String[] args) throws Exception
{
String kongge=new String(" ")
//为后面的结果集输出好看点
Class.forName("com.mysql.jdbc.Driver")
//驱动
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/greatwqs?user=root&password=greatwqs")
/*连接数据库,jdbc:mysql://localhost:3306/greatwqs 数据库为greatwqs数据库
* 端口为3306
*
* 用户名user=root
*
* 用户密码password=greatwqs
*/
Statement stmt=conn.createStatement()
//创建SQL语句,实现对数据库的 *** 作功能
ResultSet rs=stmt.executeQuery("select * from person")
//返回查询的结果
while(rs.next())
{
System.out.print(rs.getString("id")+kongge)
System.out.print(rs.getString("name")+kongge)
System.out.print(rs.getString("gender")+kongge)
System.out.print(rs.getString("major")+kongge)
System.out.print(rs.getString("phone")+kongge)
System.out.println()
}//输出结果集的内容
rs.close()
stmt.close()
conn.close()
//关闭语句,结果集,数据库的连接.
}
}
我运行的结果如下
Java的一些常用函数,方法总结:1:数组方面:
数组是一个对象,数组名可以理解和C++里面一样,
1):System.arraycopy(src,srcindex,dst,dstindex,src.length)
2):java.util.Arrays.sort(数组名)//块数排序法进行排序
3):java.util.Arrays.binarySearch(arr,key)//从哪里收,关键值,返回索引.没有的话返回-1
4):java.util.Array.fill(arr,value),设置数组初始值
5):Array.equals(arr1,arr2)//比较两个数组中元素是不是全部相等,是返回true,不是返回false
2:时间方面:
public static String dateToStr(java.util.Date date)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
String str = sdf.format(date)
return str
}
import java.text.SimpleDateFormat
import java.util.Calendar
public class DateUtil
{
public static java.util.Date parseDate(String dateStr, String format)
{
java.util.Date date = null
try
{
java.text.DateFormat df = new java.text.SimpleDateFormat(format)
String dt = dateStr.replaceAll("-", "/")
if ((!dt.equals("")) &&(dt.length() <format.length()))
{
dt += format.substring(dt.length()).replaceAll("[YyMmDdHhSs]", "0")
}
date = (java.util.Date) df.parse(dt)
}
catch (Exception e)
{
}
return date
}
public static java.util.Date parseDate(String dateStr)
{
return parseDate(dateStr, "yyyy/MM/dd")
}
public static String format(java.util.Date date, String format)
{
String result = ""
try
{
if (date != null)
{
java.text.DateFormat df = new java.text.SimpleDateFormat(format)
result = df.format(date)
}
}
catch (Exception e)
{
}
return result
}
public static String format(java.util.Date date)
{
return format(date, "yyyy/MM/dd")
}
public static int getYear(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.get(java.util.Calendar.YEAR)
}
public static int getMonth(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.get(java.util.Calendar.MONTH) + 1
}
public static int getDay(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.get(java.util.Calendar.DAY_OF_MONTH)
}
public static int getHour(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.get(java.util.Calendar.HOUR_OF_DAY)
}
public static int getMinute(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.get(java.util.Calendar.MINUTE)
}
public static int getSecond(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.get(java.util.Calendar.SECOND)
}
public static long getMillis(java.util.Date date)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTime(date)
return c.getTimeInMillis()
}
public static String getDate(java.util.Date date)
{
return format(date, "yyyy/MM/dd")
}
public static String getTime(java.util.Date date)
{
return format(date, "HH:mm:ss")
}
public static String getDateTime(java.util.Date date)
{
return format(date, "yyyy/MM/dd HH:mm:ss")
}
public static java.util.Date addDate(java.util.Date date, int day)
{
java.util.Calendar c = java.util.Calendar.getInstance()
c.setTimeInMillis(getMillis(date) + ((long) day) * 24 * 3600 * 1000)
return c.getTime()
}
public static int diffDate(java.util.Date date, java.util.Date date1)
{
return (int) ((getMillis(date) - getMillis(date1)) / (24 * 3600 * 1000))
}
public static String getMonthBegin(String strdate)
{
java.util.Date date = parseDate(strdate)
return format(date, "yyyy-MM") + "-01"
}
public static String getMonthEnd(String strdate)
{
java.util.Date date = parseDate(getMonthBegin(strdate))
Calendar calendar = Calendar.getInstance()
calendar.setTime(date)
calendar.add(Calendar.MONTH, 1)
calendar.add(Calendar.DAY_OF_YEAR, -1)
return formatDate(calendar.getTime())
}
public static String formatDate(java.util.Date date)
{
return formatDateByFormat(date, "yyyy-MM-dd")
}
public static String formatDateByFormat(java.util.Date date, String format)
{
String result = ""
if (date != null)
{
try
{
SimpleDateFormat sdf = new SimpleDateFormat(format)
result = sdf.format(date)
}
catch (Exception ex)
{
ex.printStackTrace()
}
}
return result
}
}
Java日期格式化及其使用例子
1 SimpleDateFormat担当重任,怎样格式化都行
import java.util.Date
import java.text.SimpleDateFormat
public class Demo
{
public static void main(String[] args)
{
Date now=new Date()
SimpleDateFormat f=newSimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分")
System.out.println(f.format(now))
f=new SimpleDateFormat("a hh点mm分ss秒")
System.out.println(f.format(now))
}
}
2 从字符串到日期类型的转换:
import java.util.Date
import java.text.SimpleDateFormat
import java.util.GregorianCalendar
import java.text.*
publicclass Demo
{
public static void main(String[] args)
{
String strDate="2005年04月22日"
//注意:SimpleDateFormat构造函数的样式与strDate的样式必须相符
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy年MM月dd日")
//必须捕获异常
try
{
Date date=simpleDateFormat.parse(strDate)
System.out.println(date)
}
catch(ParseException px)
{
px.printStackTrace()
}
}
}
3 将毫秒数换转成日期类型
import java.util.Date
import java.text.SimpleDateFormat
import java.util.GregorianCalendar
import java.text.*
public class Demo
{
public static void main(String[] args)
{
long now=System.currentTimeMillis()
System.out.println("毫秒数:"+now)
Date dNow=new Date(now)
System.out.println("日期类型:"+dNow)
}
}
4 获取系统时期和时间,转换成SQL格式后更新到数据库
java.util.Date d=new java.util.Date() //获取当前系统的时间
//格式化日期
new java.text.SimpleDateFormat s= new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
String dateStr = s.format(d)//转为字符串
使用RS更新数据库,仍然要用rs.updateString,而不是rs.updateDade。
rs.updateString("regtime",dateStr) //regtime字段为datetime类型的
5 按本地时区输出当前日期
Date myDate = new Date()
System.out.println(myDate.toLocaleString())
输出结果为:
2003-5-30
6 如何格式化小数
DecimalFormat df = new DecimalFormat(",###.00")
double aNumber = 33665448856.6568975
String result = df.format(aNumber)
Sytem. out.println(result)
输出结果为:
33,665,448,856.66
其他:获取毫秒时间 System.currentTimeMillis()
7 在数据库里的日期只以年-月-日的方式输出
定义日期格式:SimpleDateFormat sdf = new SimpleDateFormat(yy-MM-dd)
sql语句为:String sqlStr = "select bookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'"
输出:
System.out.println(df.format(rs.getDate("bookDate")))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)