📄 comexpression.java
字号:
}
Double db = new Double(temp);
dInt = db.intValue();//取整数部分
dDec = ((new Double((Math.abs(temp))*100)).intValue())%100;//取小数部分
if(input < 0&&dInt==0)
{
doubleStr = "-"+String.valueOf(dInt)+"."+String.valueOf(dDec);
}
else
{
doubleStr = String.valueOf(dInt)+"."+String.valueOf(dDec);
}
return doubleStr;
}
//////////////////将数据精确到指定的位数/////////////////////////////
////////////////////
public static String doubleToint(double input,int bit)
{
/////////////其中 bit<=14是最好的//////////
long dInt = 0;
long dDec = 0;
String doubleStr = null;
double temp = 0.00;
ComExpression cx = null;
if(bit==0)//小数位数为0 ;
{
return String.valueOf(new Double(input).intValue());
}
long bit_temp = 10;//
double carry ;//进位;
for(int i = 0;i < bit;i++)
{
bit_temp = bit_temp*10;
}
cx = new ComExpression("5/"+bit_temp);
String rs = cx.getResultStr();
carry = new Double(rs).doubleValue();
if(input < 0)
{
temp = 0-(Math.abs(input)+carry);
}
else
{
temp = input +carry;
}
Double db = new Double(temp);
dInt = db.longValue();//取整数部分
dDec = ((new Double((Math.abs(temp))*(bit_temp/10))).longValue())%(bit_temp/10);//取小数部分
String dDecStr = String.valueOf(dDec);
int deffDec = bit - dDecStr.length();
for(int i = 0;i < deffDec;i++)//补齐小数位数
{
dDecStr = "0"+dDecStr;
}
if(input < 0&&dInt==0)
{
doubleStr = "-"+String.valueOf(dInt)+"."+dDecStr;
}
else
{
doubleStr = String.valueOf(dInt)+"."+dDecStr;
}
return doubleStr;
}
public double getResult()
{
return result;
}
public String getResultStr()
{
// Double db = new Double(this.resultStr);
// double ldb = db.doubleValue();
// String rs = this.floadToint(ldb);
return this.resultStr;
// return rs;
}
public String getError()
{
return this.errorStr;
}
//////////////////////////////////////////////////////////////////////
////////////////////判断操作符的优先级(相对于栈)//////////////////////////////////
public static String precede(String c1,String c2)
{
String op = null;
switch(c1.charAt(0))
{
case '+':
switch(c2.charAt(0))
{
case '+':
op = ">";
break;
case '-':
op = ">";
break;
case '*':
op = "<";
break;
case '/':
op = "<";
break;
case '(':
op = "<";
break;
case ')':
op = ">";
break;
case '#':
op = ">";
break;
case '^':
op = "<";
break;
case 'c':
op = "<";
break;
case 's':
op = "<";
break;
case 't':
op = "<";
break;
case 'e':
op = "<";
break;
case 'l':
op = "<";
break;
}
break;
case '-':
switch(c2.charAt(0))
{
case '+':
op = ">";
break;
case '-':
op = ">";
break;
case '*':
op = "<";
break;
case '/':
op = "<";
break;
case '(':
op = "<";
break;
case ')':
op = ">";
break;
case '#':
op = ">";
break;
case '^':
op = "<";
break;
case 'c':
op = "<";
break;
case 's':
op = "<";
break;
case 't':
op = "<";
break;
case 'e':
op = "<";
break;
case 'l':
op = "<";
break;
}
break;
case '*':
switch(c2.charAt(0))
{
case '+':
op = ">";
break;
case '-':
op = ">";
break;
case '*':
op = ">";
break;
case '/':
op = ">";
break;
case '(':
op = "<";
break;
case ')':
op = ">";
break;
case '#':
op = ">";
break;
case '^':
op = "<";
break;
case 'c':
op = "<";
break;
case 's':
op = "<";
break;
case 't':
op = "<";
break;
case 'e':
op = "<";
break;
case 'l':
op = "<";
break;
}
break;
case '/':
switch(c2.charAt(0))
{
case '+':
op = ">";
break;
case '-':
op = ">";
break;
case '*':
op = ">";
break;
case '/':
op = ">";
break;
case '(':
op = "<";
break;
case ')':
op = ">";
break;
case '#':
op = ">";
break;
case '^':
op = "<";
break;
case 'c':
op = "<";
break;
case 's':
op = "<";
break;
case 't':
op = "<";
break;
case 'e':
op = "<";
break;
case 'l':
op = "<";
break;
}
break;
case '(':
switch(c2.charAt(0))
{
case '+':
op = "<";
break;
case '-':
op = "<";
break;
case '*':
op = "<";
break;
case '/':
op = "<";
break;
case '(':
op = "<";
break;
case ')':
op = "=";
break;
case '^':
op = "<";
break;
case 'c':
op = "<";
break;
case 's':
op = "<";
break;
case 't':
op = "<";
break;
case 'e':
op = "<";
break;
case 'l':
op = "<";
break;
}
break;
case ')':
switch(c2.charAt(0))
{
case '+':
op = ">";
break;
case '-':
op = ">";
break;
case '*':
op = ">";
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -