1、classpath不用再定义.;***\lib\tools.jar;***\lib\rt.jar,因为jre会自动寻找lib目录
2、如果想要用jdk5.0编译出jdk1.4可运行的class文件需要带-source和-target两个参数
eg: javac -source 1.4 -target 1.4 Hello.java
3、命令行读入int i = System.in.read();//读入输入字符串的第一个字符的int值;
读整个字符串时:
public class Test{
public static void main(String[] args){
byte[] a = new byte[100];
try {
System.in.read(a);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(new String(a));
}
}
jdk5.0中命令行读入的方法更好,可以读成不同类型的数据:
//Scanner取得输入的依据是:空格键、Tab键或Enter键
import java.util.Scanner;
public class ScannerDemo{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.print("请输入姓名");
System.out.printf("您好%s!\n", scanner.next());
System.out.print("请输入年龄");
System.out.printf("您好%d!\n", scanner.nextInt());
//还有scanner.nextFloat(),scanner.nextBoolean();
}
}
//BufferReader取得输入的依据是:Enter键
import java.io.*;
public class BufferReaderDemo{
public static void main(String[] args){
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入一系列文字");
String text = bufferedReader.readLine();
System.out.print("您输入的是:" + text);
}
}
}
4、aotuboxing和unboxing,jdk5.0可以自动对基本类型和它们的包装类型自动转换。
5、数组
数组的索引值:由0开始的原因:索引值表示偏移量,第一个值的偏移为0.
数组的初始化:byte/short/int = 0; long = ol; float = o.0f; double = 0.0d; char = \u0000; boolean = false; Objective = null;
一维数组:
法一:int[] i = {1,2,3};
法二:int[] i = new int[]{1,2,3};
法三:int[] i = new int[3]; i[0] = 1; i[1] = 2; i[2] = 3;
多维数组:
法一:int[][] i = {{...},...,{...}};
法二:int[][] i = int[][]{{...},...,{...}};
法三:int[][] i = int[3][]; i[0] = {1,2,3}; i[0] = {1,2,3}; i[0] = {1,2,3};
法四:int[][] i = int[3][3];
不规则数组:行列不等
数组的常用方法:都是java.util.Arrays类的方法
sort()//制定数组快速排序
binarySearch()//对已排序的数组搜索,找到返回索引,否则返回负值
fill()//根据数组的数据类型填默认值
equals()//比较两数组
jdk1.5中新增:
deepEquals()//深度比较
deepToString()//深度输出
foreach与数组:
String[] a = {"asd","efge","efg"};
for(String s : a)
System.out.println(s);
5、字符串
java.lang.StringBuilder是jdk5.0新增的类,它与StringBuffer具有相同接口,只是单机非多线程情况下用StringBuilder效率较高,因为StringBuilder没处理同步问题;多线程下用StringBuffer好。
字符串分离:
String s = "23/twomen/tlai/t jeje";
String[] a = s.split("/t");
for(int i = 0; i < a.length; i++){
System.out.print(a[i] + " ");
}
输出结构:23 women lai jeje
由于工作关系学习jdk5.0的步伐暂时停止,以后有机会继续看《jdk5.0学习笔记》,回来写我的总结。
posted on 2007-03-08 15:06
保尔任 阅读(449)
评论(0) 编辑 收藏 所属分类:
J2SE