Java经典实例第二版.docx

上传人:b****5 文档编号:12176864 上传时间:2023-04-17 格式:DOCX 页数:81 大小:41.39KB
下载 相关 举报
Java经典实例第二版.docx_第1页
第1页 / 共81页
Java经典实例第二版.docx_第2页
第2页 / 共81页
Java经典实例第二版.docx_第3页
第3页 / 共81页
Java经典实例第二版.docx_第4页
第4页 / 共81页
Java经典实例第二版.docx_第5页
第5页 / 共81页
点击查看更多>>
下载资源
资源描述

Java经典实例第二版.docx

《Java经典实例第二版.docx》由会员分享,可在线阅读,更多相关《Java经典实例第二版.docx(81页珍藏版)》请在冰豆网上搜索。

Java经典实例第二版.docx

Java经典实例第二版

Java经典实例(第二版)

1.获取环境变量

Java代码

1.System.getenv("PATH");  

2.System.getenv("JAVA_HOME");  

System.getenv("PATH");

System.getenv("JAVA_HOME");

 

2.获取系统属性

Java代码

1.System.getProperty("pencil color");  // 得到属性值  

2.java -Dpencil color=green  

3.System.getProperty("java.specification.version");  // 得到Java版本号  

4.Properties p = System.getProperties();  // 得到所有属性值  

5.p.list(System.out);  

System.getProperty("pencilcolor");//得到属性值

java-Dpencilcolor=green

System.getProperty("java.specification.version");//得到Java版本号

Propertiesp=System.getProperties();//得到所有属性值

p.list(System.out);

 

3.StringTokenizer

Java代码

1.// 能够同时识别, 和 |  

2.StringTokenizer st = new StringTokenizer("Hello, World|of|Java", ", |");  

3.while (st.hasMoreElements()) {  

4.    st.nextToken();  

5.}  

6.  

7.// 把分隔符视为token  

8.StringTokenizer st = new StringTokenizer("Hello, World|of|Java", ", |",  true);  

//能够同时识别,和|

StringTokenizerst=newStringTokenizer("Hello,World|of|Java",",|");

while(st.hasMoreElements()){

st.nextToken();

}

//把分隔符视为token

StringTokenizerst=newStringTokenizer("Hello,World|of|Java",",|",true);

 

4.StringBuffer(同步)和StringBuilder(非同步)

Java代码

1.StringBuilder sb = new StringBuilder();  

2.sb.append("Hello");  

3.sb.append("World");  

4.sb.toString();  

5.new StringBuffer(a).reverse();   // 反转字符串  

StringBuildersb=newStringBuilder();

sb.append("Hello");

sb.append("World");

sb.toString();

newStringBuffer(a).reverse();//反转字符串

 

5. 数字

Java代码

1.// 数字与对象之间互相转换 - Integer转int  

2.Integer.intValue();  

3.  

4.// 浮点数的舍入    

5.Math.round()  

6.  

7.// 数字格式化  

8.NumberFormat  

9.  

10.// 整数 -> 二进制字符串  

11.toBinaryString()或valueOf()  

12.  

13.// 整数 -> 八进制字符串  

14.toOctalString()  

15.  

16.// 整数 -> 十六进制字符串  

17.toHexString()  

18.  

19.// 数字格式化为罗马数字  

20.RomanNumberFormat()  

21.  

22.// 随机数  

23.Random r = new Random();  

24.r.nextDouble();  

25.r.nextInt();  

//数字与对象之间互相转换-Integer转int

Integer.intValue();

//浮点数的舍入

Math.round()

//数字格式化

NumberFormat

//整数->二进制字符串

toBinaryString()或valueOf()

//整数->八进制字符串

toOctalString()

//整数->十六进制字符串

toHexString()

//数字格式化为罗马数字

RomanNumberFormat()

//随机数

Randomr=newRandom();

r.nextDouble();

r.nextInt();

 

6.日期和时间

Java代码

1.// 查看当前日期  

2.Date today = new Date();  

3.Calendar.getInstance().getTime();  

4.  

5.// 格式化默认区域日期输出  

6.DateFormat df = DateFormat.getInstance();  

7.df.format(today);  

8.  

9.// 格式化制定区域日期输出        

10.DateFormat df_cn = DateFormat.getDateInstance(DateFormat.FULL, Locale.CHINA);  

11.String now = df_cn.format(today);  

12.  

13.// 按要求格式打印日期  

14.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:

mm:

ss");  

15.sdf.format(today);  

16.  

17.// 设置具体日期  

18.GregorianCalendar d1 = new GregorianCalendar(2009, 05, 06);  // 6月6日  

19.GregorianCalendar d2 = new GregorianCalendar();  // 今天  

20.Calendar d3 = Calendar.getInstance();  // 今天  

21.d1.getTime();  // Calendar或GregorianCalendar转成Date格式  

22.d3.set(Calendar.YEAR, 1999);  

23.d3.set(Calendar.MONTH, Calendar.APRIL);  

24.d3.set(Calendar.DAY_OF_MONTH, 12);  

25.  

26.// 字符串转日期  

27.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:

mm:

ss");  

28.Date now = sdf.parse(String);  

29.  

30.// 日期加减  

31.Date now = new Date();  

32.long t = now.getTime();  

33.t += 700*24*60*60*1000;  

34.Date then = new Date(t);  

35.  

36.Calendar now = Calendar.getInstance();  

37.now.add(Calendar.YEAR, -2);  

38.  

39.// 计算日期间隔(转换成long来计算)  

40.today.getTime() - old.getTime();  

41.  

42.// 比较日期  

43.Date类型,就使用equals(), before(), after()来计算  

44.long类型,就使用==, <, >来计算  

45.  

46.// 第几日  

47.使用Calendar的get()方法  

48.Calendar c = Calendar.getInstance();  

49.c.get(Calendar.YEAR);   

50.  

51.// 记录耗时  

52.long start = System.currentTimeMillis();  

53.long end = System.currentTimeMillis();  

54.long elapsed = end - start;  

55.System.nanoTime();  //毫秒  

56.  

57.// 长整形转换成秒  

58.Double.toString(t/1000D);  

//查看当前日期

Datetoday=newDate();

Calendar.getInstance().getTime();

//格式化默认区域日期输出

DateFormatdf=DateFormat.getInstance();

df.format(today);

//格式化制定区域日期输出

DateFormatdf_cn=DateFormat.getDateInstance(DateFormat.FULL,Locale.CHINA);

Stringnow=df_cn.format(today);

//按要求格式打印日期

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddhh:

mm:

ss");

sdf.format(today);

//设置具体日期

GregorianCalendard1=newGregorianCalendar(2009,05,06);//6月6日

GregorianCalendard2=newGregorianCalendar();//今天

Calendard3=Calendar.getInstance();//今天

d1.getTime();//Calendar或GregorianCalendar转成Date格式

d3.set(Calendar.YEAR,1999);

d3.set(Calendar.MONTH,Calendar.APRIL);

d3.set(Calendar.DAY_OF_MONTH,12);

//字符串转日期

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddhh:

mm:

ss");

Datenow=sdf.parse(String);

//日期加减

Datenow=newDate();

longt=now.getTime();

t+=700*24*60*60*1000;

Datethen=newDate(t);

Calendarnow=Calendar.getInstance();

now.add(Calendar.YEAR,-2);

//计算日期间隔(转换成long来计算)

today.getTime()-old.getTime();

//比较日期

Date类型,就使用equals(),before(),after()来计算

long类型,就使用==,<,>来计算

//第几日

使用Calendar的get()方法

Calendarc=Calendar.getInstance();

c.get(Calendar.YEAR);

//记录耗时

longstart=System.currentTimeMillis();

longend=System.currentTimeMillis();

longelapsed=end-start;

System.nanoTime();//毫秒

//长整形转换成秒

Double.toString(t/1000D);

 

7.结构化数据

Java代码

1.// 数组拷贝  

2.System.arrayCopy(oldArray, 0, newArray, 0, oldArray.length);  

3.  

4.// ArrayList  

5.add(Object o)  // 在末尾添加给定元素  

6.add(int i, Object o)  // 在指定位置插入给定元素  

7.clear()  // 从集合中删除全部元素  

8.Contains(Object o)  // 如果Vector包含给定元素,返回真值  

9.get(int i)  // 返回指定位置的对象句柄  

10.indexOf(Object o)  // 如果找到给定对象,则返回其索引值;否则,返回-1  

11.remove(Object o)  // 根据引用删除对象  

12.remove(int i)  // 根据位置删除对象  

13.toArray()  // 返回包含集合对象的数组  

14.  

15.// Iterator  

16.List list = new ArrayList();  

17.Iterator it = list.iterator();  

18.while (it.hasNext())  

19.Object o = it.next();  

20.  

21.// 链表  

22.LinkedList list = new LinkedList();  

23.ListIterator it = list.listIterator();  

24.while (it.hasNext())  

25.Object o = it.next();  

26.  

27.// HashMap  

28.HashMap hm = new HashMap();  

29.hm.get(key);  // 通过key得到value  

30.hm.put("No1", "Hexinyu");  

31.hm.put("No2", "Sean");  

32.// 方法1:

 获取全部键值    

33.Iterator it = hm.values().iterator();   

34.while (it.hasNext()) {  

35.    String myKey = it.next();  

36.    String myValue = hm.get(myKey);  

37.}  

38.// 方法2:

 获取全部键值        

39.for (String key :

 hm.keySet()) {  

40.    String myKey = key;  

41.    String myValue = hm.get(myKey);  

42.}  

43.  

44.// Preferences - 与系统相关的用户设置,类似名-值对  

45.Preferences prefs = Preferences.userNodeForPackage(ArrayDemo.class);  

46.String text = prefs.get("textFontName", "lucida-bright");  

47.String display = prefs.get("displayFontName", "lucida-balckletter");  

48.System.out.println(text);  

49.System.out.println(display);  

50.// 用户设置了新值,存储回去       

51.prefs.put("textFontName", "new-bright");  

52.prefs.put("displayFontName", "new-balckletter");  

53.  

54.// Properties - 类似名-值对,key和value之间,可以用"=",":

"或空格分隔,用"#"和"!

"注释  

55.InputStream in = MediationServer.class.getClassLoader().getResourceAsStream("msconfig.properties");  

56.Properties prop = new Properties();  

57.prop.load(in);  

58.in.close();  

59.prop.setProperty(key, value);  

60.prop.getProperty(key);  

61.  

62.// 排序  

63.1. 数组:

Arrays.sort(strings);  

64.2. List:

Collections.sort(list);  

65.3. 自定义类:

class SubComp implements Comparator  

66.    然后使用Arrays.sort(strings, new SubComp())  

67.     

68.// 两个接口  

69.1. java.lang.Comparable:

 提供对象的自然排序,内置于类中  

70.   int compareTo(Object o);  

71.    boolean equals(Object o2);  

72.2. java.util.Comparator:

 提供特定的比较方法  

73.   int compare(Object o1, Object o2)  

74.     

75.// 避免重复排序,可以使用TreeMap  

76.TreeMap sorted = new TreeMap(unsortedHashMap);  

77.  

78.// 排除重复元素  

79.Hashset hs - new HashSet();  

80.  

81.// 搜索对象  

82.binarySearch():

 快速查询 - Arrays, Collections  

83.contains():

 线型搜索 - ArrayList, HashSet, Hashtable, linkedList, Properties, Vector  

84.containsKey():

 检查集合对象是否包含给定 - HashMap, Hashtable, Properties, TreeMap  

85.containsValue():

 主键(或给定值) - HashMap, Hashtable, Properties, TreeMap  

86.indexOf():

 若找到给定对象,返回其位置 - ArrayList, linkedList, List, Stack, Vector  

87.search():

 线型搜素 - Stack  

88.  

89.// 集合转数组  

90.toArray();  

91.  

92.// 集合总结  

93.Collection:

 Set - HashSet, TreeSet  

94.Collection:

 List - ArrayList, Vector, LinkedList  

95.Map:

 HashMap, HashTable, TreeMap  

//数组拷贝

System.arrayCopy(oldArray,0,newArray,0,oldArray.length);

//ArrayList

add(Objecto)//在末尾添加给定元素

add(inti,Objecto)//在指定位置插入给定元素

clear()//从集合中删除全部元素

Contains(Objecto)//如果Vector包含给定元素,返回真值

get(inti)//返回指定位置的对象句柄

indexOf(Objecto)//如果找到给定对象,则返回其索引值;否则,返回-1

remove(Objecto)//根据引用删除对象

remove(inti)//根据位置删除对象

toArray()//返回包含集合对象的数组

//Iterator

Listlist=newArrayList();

Iteratorit=list.iterator();

while(it.hasNext())

Objecto=it.next();

//链表

LinkedListlist=newLinkedList();

ListIteratorit=list.listIterator();

while(it.hasNext())

Objecto=it.next();

//HashMap

HashMaphm=newHashMap();

hm.get(key);//通过key得到value

hm.put("No1","Hexinyu");

hm.put("No2","Sean");

//方法1:

获取全部键值

Iteratorit=hm.values().iterator();

while(it.hasNext()){

StringmyKey=it.next();

StringmyValue=hm.get(myKey);

}

//方法2:

获取全部键值

for(Stringkey:

hm.keySet()){

StringmyKey=key;

StringmyValue=hm.get(myKey);

}

//Preferenc

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1