1. 首页>百科大全 > 百科

java怎么样把字符串变成算式

作者:刘龙明
2020-06-02
百科

1. java中字符串如何变为算式

使用 Integer 类的 静态方法parseInt(String s)

public class Test

{

public static void main(String[] args)

{

String s = "240";

int i =Integer.parseInt(s);

i+=10;

System.out.println(i);

}

}

解释:

parseInt

public static int parseInt(String s)

throws NumberFormatException将字符串参数作为有符号的十进制整数进行分析。除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('u002D') 外,字符串中的字符都必须是十进制数字。返回得到的整数值,就好像将该参数和基数 10 作为参数赋予 parseInt(java.lang.String, int) 方法一样。

参数:

s - 包含要分析的 int 表示形式的 String。

返回:

用十进制参数表示的整数值。

抛出:

NumberFormatException - 如果字符串不包含可分析的整数。

parseInt

public static int parseInt(String s,

int radix)

throws NumberFormatException使用第二个参数指定的基数,将字符串参数解析为有符号的整数。除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('u002D')外,字符串中的字符必须都是指定基数的数字(通过 Character.digit(char, int) 是否返回一个负值确定)。返回得到的整数值。

如果发生以下任意一种情况,则抛出一个 NumberFormatException 类型的异常:

第一个参数为 null 或一个长度为零的字符串。

基数小于 Character.MIN_RADIX 或者大于 Character.MAX_RADIX。

假如字符串的长度超过 1,那么除了第一个字符可以是减号 '-' ('u002D') 外,字符串中的任何字符都不是指定基数的数字。

字符串表示的值不是 int 类型的值。

示例:

parseInt("0", 10) 返回 0

parseInt("473", 10) 返回 473

parseInt("-0", 10) 返回 0

parseInt("-FF", 16) 返回 -255

parseInt("1100110", 2) 返回 102

parseInt("2147483647", 10) 返回 2147483647

parseInt("-2147483648", 10) 返回 -2147483648

parseInt("2147483648", 10) 抛出 NumberFormatException

parseInt("99", 8) 抛出 NumberFormatException

parseInt("Kona", 10) 抛出 NumberFormatException

parseInt("Kona", 27) 返回 411787

参数:

s - 包含要分析的整数表示形式的 String

radix - 分析 s 时使用的基数。

返回:

使用指定基数的字符串参数表示的整数。

抛出:

NumberFormatException - 如果 String 不包含可分析的 int。

2. java中怎么将字符串(带运算符号加减乘除)转换成代数算式运算

这需要写很长一段代码。

1、判断表达式中有没有括号,如果有括号,转第二步。没有括号转第三步。

2、把括号内的内容提取出来,作为一个新的表达式。转第三步

3、判断表达式中有没有乘号和除号,有转第四步。没有转第六步。

4、把乘除号和乘除号前后的数字提取出来,得到新的表达式,转第五步。

5、提取数字和符号,判断表达式是乘号还是除号,然后计算结果。返回。

6、表达式没有乘除号,有加减号。转第七步。

7、提取包含加减的表达式中的符号和数据,计算结果,返回。

就是这个道理,这里只是描述了带括号和加减乘除的表达式,如果有更多的运算符,则根据运算符优先级处理。

3. java怎样把字符串表达式计算出来

可以使用 commons-jexl3 jar包

示例:

public static void main(String[] args){

String expressionString = "1+2+3";

JexlEngine jexlEngine = new JexlBuilder().create();

Jexlexpression jexlexpression = jexlEngine.createexpression(expressionString);

Object evaluate = jexlexpression.evaluate(null);

System.out.println(evaluate);

}结果: 6

示例2:

来个复杂点的

public static void main(String[] args){

// String expressionString = "1+2+3";

String expressionString = "100*10-(200+300)";

JexlEngine jexlEngine = new JexlBuilder().create();

Jexlexpression jexlexpression = jexlEngine.createexpression(expressionString);

Object evaluate = jexlexpression.evaluate(null);

System.out.println(evaluate);

}

结果: 500

4. java高手来

直接可以用的!!!

不懂再 Hi 我吧!!!

import java.util.*;

public class SplitNumber {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.out.println("请输入算数表达式!");

System.out.println("格式:Num1+Num2+Num3。回车结束!");

String str = sc.nextLine();

String[] s = str.split("+");

int sum = 0;

int temp = 0;

for(int i=0;i<s.length;i++) {

temp = Integer.parseInt(s[i]);

sum = sum + temp;

}

System.out.println(str+"="+sum);

}

}

5. java 怎么把运算符字符串转化为字符

1、字符串“+”不能直接转化成运算符+进行操作,但可以换一个思路,只需要判断出来字符串中的+,然后把以它截取字符串,两端的内容应该就是需要进行做+运算的内容了,如“123+456”这个字符串,进行split截取,自己去运算就达到了同样的运算效果。

2、代码如下

public static void main(String args[])

{

String str="123+456";//定义一个随意的包含运算式的字符串

String a[]= str.split("+");//+是特殊字符,需要用转义,split返回string数组

System.out.println("截取结果:"+a[0]+"+"+a[1]);

int sum=Integer.parseInt(a[0])+Integer.parseInt(a[1]);

System.out.println("运算结果:"+sum);

}3、运行效果

6. java 怎么把字符串转化成整型

亲,不是随便什么字符串都能转成整数的,必须是数字字符串"123123022。",你程序抛出异常是肯定的,输入的是一个字符'a',单个字符可以转,直接用 int x = (int)'a';这样就行了,要输入的字符串,就用你上面的方法就很好了,只不过要加一个异常处理

try{

int num = Integer.parseInt(str);

System.out.println(num);

}catch(NumberFormatException e){

System.out.println(“您输入的字符串含有非数字字符,无法转成整数”);

}

推荐阅读
  • 努比亚z9max手机音乐效验

    该机拥有HIFI级音乐芯片,音乐效果不凡。具体体现在:1.音量调节,正常听音乐中高低音都是一个音量,而杜比音效能动态扩大某个音量。比如放打鼓声,杜比会及时提高低音加强鼓声。2.加强音域,杜比音效有开阔、集中、…

    百科 2024-12-24
  • 是atChristmas还是inChristmas

    此处该用“on”。在圣诞节正确表达应为 “on Christmas ”。有具体日期的,比如知道几月几日的都用“on” ;不知道日期,但知道年份和月份的用“in” ,知道具体时间,比如几点几分用“at”。…

    百科 2024-12-24
  • 个体工商户应交纳什么税

    纳税标准根据国家税务总局《个体工商户定期定额征收管理办法》文件精神 ,定期定额征收方式适用的税种及税率如下:1、根据《中华人民共和国增值税暂行条例》规定,自2009年1月1日起,小规模纳税人增值税征收率为3%…

    百科 2024-12-24
  • 材料成本差异率为负数是什么意思

    材料成本差异额,是指材料的实际成本和计划成本之间的差额。差异率负数表示节约差异,即实际成本比计划成本小。正数表示超支差异,即实际成本比计划成本大。…

    百科 2024-12-24
  • 塞翁失马焉知非福是什么意思

    比喻一时虽然受到损失,反而因此能得到好处。也指坏事在一定条件下可变为好事,反之亦然。形容人的心态,一定要乐观向上,任何事情都有二面性,不好的一面,有可能向好的一面转化。塞翁失马,焉知非福出自《 淮南子…

    百科 2024-12-24