android开发的计算器
android开发的计算器,关键代码段落
protected Double Calculate(String str) {
List<String> symbol = getsymbol(str);
List<Double> num = getnum(str);
if(num.size()==symbol.size())
num.add(0.0);
if (symbol != null) {
for (int i = 0; i < symbol.size(); i++) {
if (symbol.get(i).equals("×") || symbol.get(i).equals("÷")) {
String sign = symbol.remove(i);
Double n1 = num.remove(i);
Double n2 = num.remove(i);
Double result = 0.0;
if (sign.equals("×")) {
result = n1 * n2;
} else {
result = n1 / n2;
}
num.add(i, result);
i = i - 1;
}
}
}
while (!symbol.isEmpty()) {
String sign = symbol.remove(0);
Double n1 = num.remove(0);
Double n2 = num.remove(0);
Double result = 0.0;
if (sign.equals("+")) {
result = n1 + n2;
} else {
result = n1 - n2;
}
num.add(0, result);
}
return num.remove(0);
}
private List<Double> getnum(String str) {
StringTokenizer tokenizer = new StringTokenizer(str, "+-×÷");
List<Double> ops = new ArrayList<Double>();
while (tokenizer.hasMoreElements()) {
String string = tokenizer.nextElement().toString();
Double double1 = Double.parseDouble(string);
ops.add(double1);
}
return ops;
}
private List<String> getsymbol(String str) {
StringTokenizer tokenizer = new StringTokenizer(str, "0123456789.");
List<String> ops = new ArrayList<String>();
while (tokenizer.hasMoreElements()) {
String string = tokenizer.nextToken();
ops.add(string);
}
return ops;
}
给pdf添加水印
批量给pdf文件添加图片水印,添加速度可以达到50M/s;
excel导入数据库
将excel导入sql数据库中,导入的过程中先获得excel的Sheet名字,与sql数据库中的名字匹配,若数据库中存在,在插入数据,若不存在,则新建立表。速度可以达到一万条每秒中
数据库之间数据的复制
数据库中的一个表快速导入另一个数据库中。
用bcp导入数据
按照数据表结构创建相应的结构,利用bcp转换数据
ppt和word转pdf格式
office转换为pdf格式,转换速度是15M/min,有点缺陷就是要装07版本以上的office软件(我是在07版本上开发的)