Java 可以用数字10乘以字符串10吗
相乘Java 可以用数字10乘以字符串10吗,java,spring,spring-el,Java,Spring,Spring El,相乘'10'*10会得到一些输出值10101010101010 有人能证明这一点吗 ExpressionParser parser = new SpelExpressionParser(); System.out.println(parser.parseExpression("'10' * 10").getValue()); 输出:10101010101010 它应该抛出一些异常,因为在java中,我们不能将字符串与数字相乘 SpEL不是Java它有一些相似之处,但它不是Java。它没有lam
'10'*10
会得到一些输出值10101010101010
有人能证明这一点吗
ExpressionParser parser = new SpelExpressionParser();
System.out.println(parser.parseExpression("'10' * 10").getValue());
输出:10101010101010
它应该抛出一些异常,因为在java中,我们不能将字符串与数字相乘
SpEL不是Java它有一些相似之处,但它不是Java。它没有lambdas,它有许多不同的语法
应用于字符串的乘数运算符意味着将该字符串串联该次数
类似于'10'+'10'='1010'
,'10'*2='1010'
OpMultiply
类中的Javadoc:
/**
* Implements the {@code multiply} operator directly here for certain types
* of supported operands and otherwise delegates to any registered overloader
* for types not supported here.
* <p>Supported operand types:
* <ul>
* <li>numbers
* <li>String and int ('abc' * 2 == 'abcabc')
* </ul>
*/
/**
*在这里直接为某些类型实现{@code multiply}运算符
*支持的操作数的数目,否则将委托给任何已注册的重载
*对于此处不支持的类型。
*支持的操作数类型:
*
*- 数字
*
- String和int('abc'*2=='abcabc')
*
*/
您希望得到什么样的输出?您希望从表达式“string'10'十次”得到什么?请尝试Integer.parseInt()@Eran==>它应该会引发一些异常,因为在java中,字符串不能与数字相乘。Spring表达式语言(SpEL)!=JAVA