来京学习第11天
来源:互联网 发布:ubuntu 16.04下载qq 编辑:程序博客网 时间:2024/04/28 06:45
今天学习了集合类、泛型、时间和日历、枚举,还温故了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; } }}
0 0
- 来京学习第11天
- 来京学习第8天
- 来京学习第9天
- 来京学习第10天
- 来京学习第16天
- 来京学习第三天
- 来京学习第二天
- 来京学习第四天
- 来京学习第7天(除去周末2天)
- 来京学习第15天(前2天是周末)
- 来京第十天
- 女友来京
- 来京一年总结
- 来京工作感受
- 来京两周年
- 来京一周年记
- 学习java第11天
- Java学习第11-12天:多线程
- 手机改 user模式为debug模式
- Jakarta-Common-BeanUtils研究心得 (转)
- MySQL数据类型中DECIMAL的作用和用法
- 检测iOS WebApp是否运行在全屏模式
- hdu 5308 (2015多校第二场第9题)脑洞模拟题,无语
- 来京学习第11天
- MongoDB启动方法
- Docker命令详解
- JSON解析
- C语言下,获取文件信息 http://qimo601.iteye.com/blog/1517413
- linux 文件描述符
- Codeforces Round #313 A. Currency System in Geraldion
- 高仿苹果通讯录布局
- 第九天 JSON解析、集合