来京学习第11天
2015-07-24 21:05
417 查看
今天学习了集合类、泛型、时间和日历、枚举,还温故了Json解析xml文件,内容很多,但是都不深入!
List字符串排序
\\转载他人的 import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; public class T { public static void main(String[] args) { ArrayList list = new ArrayList(); list.add("92.8"); list.add("68.9"); list.add("168.61"); list.add("242"); list.add("317"); list.add("105"); // 字符串排序 Collections.sort(list); System.out.println(list.toString()); // [105, 168.61, 242, 317, 68.9, 92.8] Collections.sort(list, new Comparator() { @Override public int compare(Object o1, Object o2) { return new Double((String) o1).compareTo(new Double((String) o2)); } }); System.out.println(list.toString()); // [68.9, 92.8, 105, 168.61, 242, 317] } }
我的JSON解析XML文件
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import net.sf.json.JSONArray; import net.sf.json.JSONException; import net.sf.json.JSONObject; public class TestJSON { public static void main(String[] args) { File f=new File("d:\\a.txt"); BufferedWriter bw; List list=new ArrayList(); try { f.createNewFile(); //br=new BufferedReader(new FileReader(f)); String json=CreateJson(); bw=new BufferedWriter(new FileWriter(f)); bw.write(json); bw.flush();//没有词句,文件没有被写入 JSONArray newArray = new JSONArray(); JSONObject newJson = new JSONObject(); //json遍历 if(json!=null){ JSONObject room=JSONObject.fromObject(json);//字符串获取一个json元素 Iterator it=room.keys(); newJson.put(it.next(), room.getString("num")); newJson.put(it.next(), room.getString("sex")); JSONArray array=room.getJSONArray("roommate"); for(int i=0;i<array.size();i++){ JSONObject obj=array.getJSONObject(i);//obj内原来已经有自己的key和对应的value obj.put("exp", 20); newArray.add(obj); // System.out.println(obj.toString()); } newJson.put("roommate", newArray); System.out.println(newJson); } bw.close(); } catch (JSONException e) { e.printStackTrace(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } public static String CreateJson(){ /*JSONObject obj1=new JSONObject(); obj1.put("name", "han"); JSONObject obj2=new JSONObject(); obj2.put("name", "hong"); JSONObject obj3=new JSONObject(); obj3.put("name", "ling"); JSONArray array=new JSONArray();//json数组 array.add(obj1); array.add(obj2); array.add(obj3); JSONObject obj=new JSONObject(); obj.put("num", "3人"); obj.put("roommate", array);//加入数组 System.out.println(obj.toString()); return obj.toString();*/ Person han=new Person(20,"han"); Person li=new Person(21,"li"); Person wan=new Person(22,"wan"); Person san=new Person(23,"san"); JSONObject obj=new JSONObject(); JSONArray array=new JSONArray(); array.add(han); array.add(san); array.add(wan); array.add(li); obj.put("num", "4人"); obj.put("sex", "女生"); obj.put("roommate", array); //System.out.println(obj.toString()); return obj.toString(); } }
转载他人的JSON解析
package com.hhl.xml0724; import java.util.Iterator; import net.sf.json.JSONArray; import net.sf.json.JSONException; import net.sf.json.JSONObject; public class Test_JSON_Array { public static void main(String[] args) { String str = "{'TI':[{'value':'aa1','count':10},{'value':'aa3','count':20}]," + "'AB':[{'value':'ab','count':110},{'value':'ab3','count':210}]}"; JSONArray newArray = new JSONArray(); JSONObject newJson = new JSONObject(); try { JSONObject obj =JSONObject.fromObject(str); Iterator it = obj.keys(); while (it.hasNext()) { String key = (String) it.next(); //System.out.println(key); String value = obj.getString(key); //System.out.println(value); JSONArray array = obj.getJSONArray(key); for(int i=0;i<array.size();i++){ JSONObject jsonobject = array.getJSONObject(i); //System.out.println(jsonobject); jsonobject.put("name", key); jsonobject.put("exp", key+"="+jsonobject.getString("value")); newArray.add(jsonobject); } } newJson.put("groups",newArray); System.out.println(newJson); } catch (JSONException e) { e.printStackTrace(); } } }
Calendar类的使用
package com.hhl.xml0724; import java.util.Date; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar;; public class Test_Time_Calender { public static void main(String[] args) { Date da=new Date(); String st="yyyy/mm/dd kk:mm:ss"; SimpleDateFormat f=new SimpleDateFormat("yyyy-mm-dd kk:mm:ss"); //SimpleDateFormat f=new SimpleDateFormat(); Calendar ca=Calendar.getInstance(); System.out.println(da.getTime());//ms System.out.println(ca.getTime());//cst 时间 System.out.println(f.format(da));//带格式输出 时间 System.out.println(da.toString()); System.out.println(ca.toString());//格林日历 System.out.println(da.getDate());//日 System.out.println(ca.get(Calendar.DAY_OF_MONTH));//日 System.out.println(da.getDay());//星期几 System.out.println(ca.get(Calendar.DAY_OF_WEEK));// System.out.println(Calendar.HOUR_OF_DAY);// //System.out.println(Calendar.DATE);// ca.add( Calendar.HOUR_OF_DAY,2);//小时字段 System.out.println(ca.get(Calendar.HOUR_OF_DAY));//变化后的值 //f.format(da); /*System.out.println(da.getDate());// try { Date date1=f.parse(st); System.out.println(date1.getDate()); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); }*/ } }
集合类的练习
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class TestArraylist { public static void main(String[] args) { List<Person> list=new ArrayList<Person>(); Person han1=new Person(20,"han1"); Person han2=new Person(18,"han2"); Person han3=new Person(25,"han3"); Person han4=new Person(2,"han4"); Person han5=new Person(28,"han5"); Person han6=new Person(28,"han5"); Person han7=new Person(28,"han5"); list.add(han1); list.add(han2); list.add(han3); list.add(han4); list.add(han5); list.add(han6); list.add(3, han7); list.get(2).setName("ling"); list.remove(0); while(list.size()<8){ Person han8=new Person(28,"han5"); if(!list.contains(han8)){ list.add(han8); } } Collections.sort(list, new MyComparator()); Collections.reverse(list对象);//反序 for(Person p:list){ System.out.println(p.getName()+" "+p.getAge()); } } } import java.util.Comparator; public class MyComparator implements Comparator<Person> { @Override public int compare(Person o1, Person o2) { // TODO Auto-generated method stub return o1.getAge()-o2.getAge(); } }
HashSet练习
import java.util.HashSet; import java.util.Iterator; import java.util.Random; public class TestHashSet { public static void main(String[] args) { HashSet<Integer> set=new HashSet<Integer>(); Random rand=new Random(); while(set.size()<10){ set.add(rand.nextInt(90)+10); } Iterator it=set.iterator();//对HashSet的遍历 while(it.hasNext()){ System.out.println(it.next()); } System.out.println("the total is :"+set.size()); } }
HashMap练习
键值不能重复,但可以多次赋值,取最后一次的值!package com.hhl.xml0724; public class Person <T extends Animal>{ private T pet; private Color color; public Color getColor() { return color; } public void setColor(Color color) { this.color = color; } public T getPet() { return pet; } public void setPet(T pet) { this.pet = pet; } private int age; private String name; public Person(int age,String name){ this.age=age; this.name=name; } public Person(){} public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } } import java.util.HashMap; import java.util.Iterator; import java.util.Set; public class TestHashMap { public static void main(String[] args) { HashMap<String,Person> mate=new HashMap<String,Person>(); Person han=new Person(20,"han"); Person li=new Person(20,"li"); Person wan=new Person(20,"wan"); Person san=new Person(20,"san"); mate.put("韩", han); mate.put("李", li); mate.put("王", wan); mate.put("馓", san); mate.put("馓", han); Set<String> keys=mate.keySet();//键值集合 Iterator<String> it=keys.iterator();//集合遍历 while(it.hasNext()){ String str=it.next(); System.out.println(str+" "+mate.get(str).getName()); } } }
泛型类练习
public class Animal { } public class Cat extends Animal{ private String name; public Cat(){ System.out.println("我是Tom"); } public String getName() { return name; } public void setName(String name) { this.name = name; } } public class Cat extends Animal{ private String name; public Cat(){ System.out.println("我是Tom"); } public String getName() { return name; } public void setName(String name) { this.name = name; } } public class Cat extends Animal{ private String name; public Cat(){ System.out.println("我是Tom"); } public String getName() { return name; } public void setName(String name) { this.name = name; } } package com.hhl.xml0724; public class Person <T extends Animal>{ private T pet; private Color color; public Color getColor() { return color; } public void setColor(Color color) { this.color = color; } public T getPet() { return pet; } public void setPet(T pet) { this.pet = pet; } private int age; private String name; public Person(int age,String name){ this.age=age; this.name=name; } public Person(){} public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } } public class TestFanxin { public static void main(String[] args) { Person<Dog> han=new Person<Dog>(); Dog dog=new Dog(); han.setPet(dog); Person<Cat> li=new Person<Cat>(); Cat cat=new Cat(); li.setPet(cat); } }
enum类练习
public enum Color { RED,ORANGE,YELLOW,GREEN,PURPLE,BLACK,WHITE } public class TestEnum { public static void main(String[] args) { Person han=new Person(); han.setColor(Color.GREEN); switch(han.getColor()){ case GREEN: System.out.println("綠衣服");break; case RED:System.out.println("紅衣服");break; case BLACK:System.out.println("黑衣服");break; case PURPLE:System.out.println("紫衣服");break; } } }
相关文章推荐
- 南阳 oj 语言入门 a letter and a number
- 背包模板
- 云计算和大数据时代网络技术揭秘(十五)大数据网络
- 如何让CI框架支持service层
- PAT (Advanced Level) 1038. Recover the Smallest Number (30) 串联最小字符串,排序
- hd1047
- 南阳 oj 语言入门 矩形的个数
- 南阳 oj 语言入门 Coin test 题目204
- unity-UIInput自定义限制输入字符
- Lowest Common Ancestor of a Binary Search Tree(树中两个结点的最低公共祖先)
- hdoj1002 A + B Problem II
- HDU 5303 Delicious Apples(贪心 + 背包 2015多校啊)
- Big Event in HDU(多重背包套用模板)
- JDK开发WebService
- Objective-C学习笔记(二十六)——成员变量的继承学习
- Play framework 浅谈 之请求处理流程
- struts ognl表达式底层执行原理
- 2015 HUAS Summer Training#2 D
- [转载] 深入理解 docker ulimit
- 540B :School Marks