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 "";
}
}
}
posted on 2014-04-11 14:20 leihupqrst 阅读(275) 评论(0) 收藏 举报
浙公网安备 33010602011771号