• java杂记


    HexToInteger:

    public class HexToInteger {
    	public static void main(String[] args){
    		int cid = 78823423;
    		System.out.println((short)0x00000FFFF);  //(short)0x00000FFFF == 0xFFFF   结果为-1
    		System.out.println(cid & (short)0x00000FFFF); //0x004B2BFF & 0xFFFFFFFF   结果为78823423
    		System.out.println(cid & 0x00000FFFF);  //0x004B2BFF & 0x0000FFFF  结果为49151
    		System.out.println(Integer.parseInt(Integer.toHexString(cid & 0x00000FFFF), 16)); //49151
    		System.out.println(Integer.parseInt(String.valueOf(cid & 0x00000FFFF), 16)); //0x49151 == 299345
    		System.out.println(String.valueOf(cid & 0x00000FFFF));  //49151
    	}
    }
    

    equals的使用:

    public class User {
    	String name;
    	int age;
    
    	public User(String name, int age){
    		this.name = name;
    		this.age = age;
    	}
    	
    	
    	public boolean equals(Object obj){
    		if(this == obj){  //this代表调用这个函数的那个对象,这个函数位于//User这个类中,则this要调用它,必须为User类型
    			return true;    
    			}
    		
    		boolean b = obj instanceof User;
    		if(b){
    		User u = (User)obj;
    		if(this.age == u.age && this.name.equals(u.name)){//基本数据类型用==,引用数据类型用equals
    			return true;
    			}else{
    			return false;
    			}
    	
    		}
    		else{
    		return false;
    		}
    	}
    
    	
    	public int hashCode(){
    		int result = 17;
    		result = 31 * result + age;
    		result = 31 * result + name.hashCode();
    		return result;
    	}
    
    }
    

    HashSet:

    import java.util.HashSet;
    import java.util.Set;
    public class HashSetTest {
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		Set<String> set = new HashSet<String>();
    		set.add("a");
    		set.add("b");
    		set.add("c");
    		set.add("d");
    		set.add("c");		
    		int i = set.size();		
    		set.remove("a");
    	}
    }
    

    简单加密算法:

    import java.io.UnsupportedEncodingException;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Map;
    import java.util.Queue;
    
    import skycomm.db.ConnectOracle;
    import skycomm.db.ConnectSqlite;
    
    public class TestMain {
    
    	/**
    	 * 位置信息解密的key值
    	 */
    	private final static String DECODE_KEYS_ZONE = "skycomm";
    
    	public Map<String, String> encMap;
    	public Map<String, String> decMap;
    	
    	public List<ImsiToAddress> list;
    
    	public Queue<Object[]> data;
    
    	public TestMain() {
    		list = new ArrayList<ImsiToAddress>();
    	}
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		ConnectSqlite sqlite = new ConnectSqlite();
    		Map<String, String> map = sqlite.selectTable();
    		
    		TestMain tm = new TestMain();
    		for (String key : map.keySet()) {
    			String addr = map.get(key);
    			String addrEnc = tm.enDec(addr);
    			
    			if (addrEnc.equals("广东 深圳")) {
    				System.out.println("addr  ++++++++++++++++++ " + addrEnc);
    			}			
    			
    			System.out.println("addr " + addrEnc);
    		}
    		
    //		ConnectOracle oracle = new ConnectOracle();
    //		ResultSet rs = oracle.selectImsiToAddress("INFO_IMSITOADDRESSENC");
    //
    //		TestMain tm = new TestMain();
    //		try {
    //
    //			while (rs.next()) {
    //				String imsi = rs.getString("imsi");
    //				String addrDec = rs.getString("address");
    //
    //				if (!imsi.equals("")) {
    //					// tm.decMap.put(imsi, addrDec);
    //
    //					// 加密
    //					String encAddr = tm.enDec(addrDec);
    //					ImsiToAddress im = new ImsiToAddress();
    //					im.setImsi(imsi);
    //					im.setAddress(encAddr);
    //					
    //					tm.list.add(im);
    //				}
    //			}
    //
    //			ConnectSqlite sqlite = new ConnectSqlite();
    //			sqlite.InsertWithTransaction(tm.list, "tb_CodeToAddress");
    
    //		} catch (SQLException e) {
    //			e.printStackTrace();
    //		}
    //		oracle.close();
    
    	}
    
    	/**
    	 * 解密位置信息
    	 * 
    	 * @param addr
    	 *            位置信息
    	 * @return
    	 */
    	private String enDec(String addr) {
    		byte b_addr[];
    		byte b_key[];
    		try {
    			b_addr = addr.getBytes("GBK");
    			b_key = DECODE_KEYS_ZONE.getBytes("GBK");
    
    			for (int i = 0; i < b_addr.length;) {
    				for (int j = 0; j < b_key.length && i < b_addr.length; ++i, ++j) {
    					b_addr[i] ^= b_key[j];
    				}
    			}
    
    			return new String(b_addr, "GBK");
    		} catch (UnsupportedEncodingException e) {
    			return "";
    		}
    	}
    }
    

      

  • 相关阅读:
    Python实现定时监测屏幕
    近期仿真遇到的问题汇总
    Python爬虫
    好用的浏览器插件
    视频剪辑软件
    MATLAB
    常用电脑辅助快捷键
    绘制PCB软件
    ANSYS19.0安装教程and遇到的各种问题以及目前知道的解决方式
    pyton脚本快速运行
  • 原文地址:https://www.cnblogs.com/leihupqrst/p/3658635.html
Copyright © 2020-2023  润新知