String和StringBuffer的区别
1、String具有长度不可改变的属性,当对字符串做添加或者删除,替换时,不会改变String对象的内容,而是产生了一个新的字符串对象
2、StringBuffer类:StringBuffer会在缓冲区开辟一个空间,当对StringBuffer内容做添加或者删除,替换时,不会改变String对象的内容,不会产生新的对象:如果你对字符串中的内容经常修改那么使用StringBuffer,如果需要String那么最后使用StringBuffer的to String()方法即可
public static void main(String[] args) { String s = "abcd"; StringBuffer sb = new StringBuffer("abcd"); test(s,sb); System.out.println(s+" "+sb); } public static void test(String s,StringBuffer sb){ s = s + "&&&"; sb.append("***"); } } abcd abcd***
<List> Collections排序
public class CollectionsTest { public static void main(String[] args) { List<Product> list = new ArrayList<Product>(); list.add(new Product(2, "燕窝", 130)); list.add(new Product(1, "鱼翅", 150)); list.add(new Product(5, "熊掌", 120)); list.add(new Product(4, "鲍鱼", 90)); Collections.sort(list,new Comparator<Product>() { @Override public int compare(Product o1, Product o2) { return o1.getCode()-o2.getCode();//升序 } //降序 o2-getCode()-o1.getCode() }); //重新随机排列集合元素 Collections.shuffle(list); for(Product i:list){ System.out.println(i); } } }
Set数组排序
public class Text { public static void main(String[] args) { // int []array={1,2,8,3,4,9,6,8}; // // Set<Integer> setArray=new HashSet<Integer>(); // for(int x:array){ // setArray.add(x); // } // for(Integer s:setArray){ // System.out.println(s); // } // // Set<Product> setArray=new HashSet<Product>(); // setArray.add(new Product(2,"苹果",5)); // setArray.add(new Product(2, "西瓜", 20)); // setArray.add(new Product(5, "香蕉", 4)); // System.out.println(setArray.size()); // for(Product s:setArray){ // System.out.println(s); // } // Map<Integer,Product> map=new HashMap<Integer,Product>(); map.put(1, new Product(1, "燕窝", 120)); map.put(2, new Product(2, "请问", 45)); map.put(3, new Product(3, "拼过", 12)); //等到map的长度 System.out.println(map.size()); //根据给得键直接删除相对应的键和值 map.remove(2); //很快找到键所在的值 Product p=map.get(2); System.out.println(p); Set<Integer> m=map.keySet(); for(Integer i:m){ Product h=map.get(i); System.out.println("键"+i+"值"+h); }
时间: 2024-10-17 13:24:49