java获得字符串间运算符变量的值

例如:Stirng str=“a+b*c/d”; 获取出a,b,c,d放入数组中  

import java.util.regex.Matcher;
import java.util.regex.Pattern; 

public class Test { 
  public static void main(String[] args){
  String str="a+b*c/d"; 
  Pattern p=Pattern.compile("[a-z]");//定义一个正则表达式的匹配规则
  
  Matcher m=p.matcher(str); //进行匹配
  
  String [] value=new String[4];//定义一个数组
  
  int i=0;//数组下标
  
  while(m.find()){// 是否寻到匹配字符
   System.out.PRintln("寻到的结果     "+m.group());
   value[i]=m.group();//添加到数组中
   i++;//下标加1 
  } 
  //输出数组元素
  for(int j=0;j<value.length;j++){
    System.out.println("value["+j+"]  =" +value[j]);
  }
 }

时间: 2024-08-02 19:54:29

java获得字符串间运算符变量的值的相关文章

java求字符串型逻辑表达式的bool值

  这是最近在项目中的一个需求,已知a=3,求字符串"a<=2"的值,也就是应该返回false.这个问题可大可小,就我们的应用场景也就是用来让用户自定义变量区间,比如类似下面这样的规则: a<=2    返回积分系数1.0 2<a<=5  返回积分系数1.1 a>5     返回积分系数1.2     如果用switch写死在代码中,以后要修改规则实在是很麻烦的事情,用户也希望能自己维护这样些区间值.于是我想就让用户自己输入这样的表达式和变量的值保存在数据

我的Java开发学习之旅------&amp;gt;工具类:Java获取字符串和文件进行MD5值

ps:这几天本人用百度云盘秒传了几部大片到云盘上,几个G的文件瞬秒竟然显示"上传成功"!这真让我目瞪口呆,要是这样的话,那得多快的网速,这绝对是不可能的,也许这仅是个假象.百度了一下才发现所谓的"秒传"是常见的"忽略式"上传方式,就是您上传了一个文件名为111.exe,MD5为一个数,有一个网友以前也上传一个叫222.exe,MD5和您上传的文件MD5码一模一样,所以这个文件上传到服务器上的时间就很短了,这是因为别人上传过这个文件,您上传这个文件

字符串-java中String究竟是传递的值,还是引用

问题描述 java中String究竟是传递的值,还是引用 很多人说,java中的String虽然是对象,但是具有值类型的特征.他是值传递,传递的值. 我认为这这种说法完全是错误的. String和普通对象毫无区别,和其他对象一样,传递的是引用,而不是值. 一段String的运用代码: String a = "123"; public void change(String a){ a = "234"; } 很多人会说,a的值没有变,是因为String是值传递,问题是,

Java入门基础之常规的命名方法和变量的值及其引用_java

 Java: 命名的讲究 1.类名 类名通常以名词结尾.而且在类名中要体现它是以保存数据为主还是提供功能为主.例如 ConnectionBuilder 这个类我们都可以猜到它的主要功能是创建 Connection 对象, 以动词-er/or 结尾的类名,至少应该包含一个以该动词开头的方法.例如 ConnectionBuilder 这个类,它至少应该包含一个以 build- 开头的方法.有了这种默契,别人就能更方便的使用这个类. 2.增删改查方法的命名 以对 Person 类的增删改查为例-- 创

java-关于Java变量的值以及一个简单的for循环语句

问题描述 关于Java变量的值以及一个简单的for循环语句 for(int i=2,j=1; j<10; i=(i==9)?(((++j)/j)+1):(i+1)){ System.out.printf("%d*%d=%2d%c",i,j,i*j, ((i==9)?'n':' ')); } 打印九九乘法表. (++j)/j+1中j和++j的值是怎么变化的?每一次循环j的值不是都应该加1吗? 谢谢各位 解决方案 自己动手编译调试一边,写程序重在实践 解决方案二: Java 运算符

java截断字符串问题,用逗号截断,但是值里面有逗号

问题描述 java截断字符串问题,用逗号截断,但是值里面有逗号 一个SQL语句的values里面的值,这里是三个字段,null,'0,1,2,3','2014-03-12 18:38:26.467319' 现在的问题是用逗号截断,第二个字段的值'0,1,2,3'也会被截断,求解决方法,怎么截断成三个 串 null 0,1,2,3 2014-03-12 18:38:26.467319 解决方案 public static void main(String[] args) { String s =

JAVA中byte 、short为什么能赋常量的值,却不能赋变量的值

问题描述 JAVA中byte .short为什么能赋常量的值,却不能赋变量的值 byte b1= 1; byte b2 =2; byte b3 =b1+b2; 这种编译为什么会报错,求指导? 解决方案 道理很简单,两个byte相加的结果byte未必能装下.比如byte b1 = 129; byte b2 = 129; 你说 byte b = b1 + b2 = ? 解决方案二: b1和b2相加的结果值默认是int类型的,改为这样就正确了;byte b3 = (byte)(b1+b2); 解决方案

java代码-java关于变量初始值的问题

问题描述 java关于变量初始值的问题 int x; System.out.println(x); 这段会报错,而如果是以下的代码却不会报错 class A{ int x; int getX(){ return x; } void print(){ System.out.println(x); } } 原因在哪 解决方案 int x只是声明,java规定局部变量使用前必须初始化,否则编译不通过.而第二个是类内部的成员变量,编译器自动初始化成员变量 解决方案二: 说法同上,java编译器初始化ja

java json字符串解析,获取json字符串中数组的值

问题描述 java json字符串解析,获取json字符串中数组的值 {"arr":["ipAddr","installationSite","imineSystemId","valid"],"login":0,"password":"","purview":"","userId":0,&