JAVA代码片段

JAVA代码片段

1.数组和List之间的转换


String[] ids1 = {"1","2","3"};
List<String> idList = Arrays.asList(ids);
String[] idArray1 = (String[]) idList.toArray();

2.数字转固定长度字符串,长度不够前面补0

public String convert(String str, int length) {
	StringBuilder sb = null;
	int strLen = str.length();
	while (strLen < length) {
		sb = new StringBuilder();
		sb.append("0").append(str);
		str = sb.toString();
		strLen = str.length();
	}
	str = prefix + str;
	return str;
}

3.Java集合转换(数组,List,Map,Set)

@Test
public void testCollection() {
	try {
		Map<String, String> map = new HashMap<String, String>();    
		map.put("A", "ABC");    
		map.put("K", "KK");    
		map.put("L", "LV");    
		  
		// 将Map Key 转化为List      
		List<String> mapKeyList = new ArrayList<String>(map.keySet());    
		System.out.println("mapKeyList:"+mapKeyList);  
		  
		// 将Map value 转化为List      
		List<String> mapValuesList = new ArrayList<String>(map.values());    
		System.out.println("mapValuesList:"+mapValuesList);
		
		// 将Map Key 转化为Set      
		Set<String> mapKeySet = map.keySet();    
		System.out.println("mapKeySet:"+mapKeySet);  
		  
		// 将Map alue 转化为Set      
		Set<String> mapValuesSet = new HashSet<String>(map.values());    
		System.out.println("mapValuesSet:"+mapValuesSet);
		
		String[] arr = {"AA","BB","DD","CC","BB"};    
		  
		//数组 --> Set    
		Set<String> set = new HashSet<String>(Arrays.asList(arr));    
		System.out.println(set);
		
		Set<String> set2 = new HashSet<String>();  
		set2.add("AA");  
		set2.add("BB");  
		set2.add("CC");  
		  
		String[] arr2 = new String[set2.size()];    
		//Set --> 数组    
		set2.toArray(arr2);   
		System.out.println(Arrays.toString(arr2));
		
		List<String> list = new ArrayList<String>();  
		list.add("ABC");  
		list.add("EFG");  
		list.add("LMN");  
		list.add("LMN");  
		  
		//List --> Set  
		Set<String> listSet = new HashSet<String>(list);  
		System.out.println(listSet);
		
		//Set --> List  
		List<String> setList = new ArrayList<String>(set2);  
		System.out.println(setList);
		
		//List --> 数组    
		Object[] objects = list.toArray();//返回Object数组    
		System.out.println("objects:"+Arrays.toString(objects));    
		  
		String[] arr3 = new String[list.size()];    
		list.toArray(arr3);//将转化后的数组放入已经创建好的对象中    
		System.out.println("strings:"+Arrays.toString(arr3));
		
		//数组-->List    
		String[] ss = {"JJ","KK"};    
		List<String> list1 = Arrays.asList(ss);    
		List<String> list2 = Arrays.asList("AAA","BBB");    
		System.out.println(list1);    
		System.out.println(list2);
	} catch (Exception e) {
		e.printStackTrace();
	}
}

4.遍历Set

@Test
public void testSomething() {
	try {
		Set<String> set = new HashSet<>(Arrays.asList("a","b","c"));
		Iterator<String> it = set.iterator();  
		while(it.hasNext()){  
			String keyStr = it.next();
			System.out.println(keyStr);
		}
	} catch (Exception e) {
		e.printStackTrace();
	}
}

5.Spring和Xml互转

参考博客:http://blog.csdn.net/yyywyr/article/details/38361367 (dom4j)

  http://blog.csdn.net/arui_email/article/details/7703424 (多种方式)

6.生成随机字符串代码

public static String getRandomString(int length) { //length表示生成字符串的长度  
    String base = "abcdefghijklmnopqrstuvwxyz0123456789";     
    Random random = new Random();     
    StringBuffer sb = new StringBuffer();     
    for (int i = 0; i < length; i++) {     
        int number = random.nextInt(base.length());     
        sb.append(base.charAt(number));     
    }     
    return sb.toString();     
 }

7.List<Integer>.remove()的一个小细节

有两个remove方法:
public E remove(int index);  
public boolean remove(Object o);
为了移除制定的元素而不至于引起混淆的话,可以将传入的int先封装一下:
list.remove((Integer)10);

8.StringBuilder清空

清空有3种方法:
1)新生成一个,旧的由系统自动回收
     StringBuilder sb2 = new StringBuilder();
2)使用delete
     sb.delete( 0, sb.length() );
3)使用setLength
    sb3.setLength( 0 );

9.String.split(String regex)细节,regex为正则表达式,有特殊含义的需要转义

如果,
String str = "aa.bb.cc.dd";
String[] strArray = str.split("."); 
则结果为:0
为什么结果不是我们所想的呢,原因是参数 String regex 是正则表达式 (regular expression) 而不是普通字符串,而 "." 在正则表达式中有特殊含义,表示匹配所有单个字符。如果要那样拆分,我们必须给 "." 进行转义,String[] strArray = str.split(".") 修改为 String[] strArray = str.split("\\.") 即可。

10.Java中char和String的转换

String转char

1. 使用String.charAt(index)(返回值为char)可以得到String中某一指定位置的char。 
2. 使用String.toCharArray()(返回值为char[])可以得到将包含整个String的char数组。这样我们就能够使用从0开始的位置索引来访问string中的任意位置的元素。

char转String

String s = String.valueOf('c'); //效率最高的方法




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值