java 取正数

来源:百度知道 编辑:UC知道 时间:2024/05/02 19:35:36
我想要从文本读取 几组坐标的值 比如(20, 30)然后把这个点显示在图上。。在坐标中我会设置大于100 和负数, 只要坐标(x, y)中有一个值是大于100或者是负数的话,这个点被忽略,不显示出来。 请教高手。。

如下:
String point = "30,50";//这是你的坐标
String pointArr = point.split(",");//分割坐标
int x = Integer.parseInt(pointArr[0]); //获取第一个点
int y = Integer.parseInt(pointArr[1]); //获取第二个点

//如果中有一个值是大于100或者是负数的话,则设置为0(假设是你说的忽略)
if(x<0 || x>100){
x = 0;
}
if(y<0 || y>100){
y = 0;
}

这样就可以了,在实际开发时注意异常处理

这类问题可以用正则表达式:
private static boolean check(String str) {
String regex =".*\\s*\\d{3,}.*\\s*|.*\\s*-\\s*\\d{1,}\\s*.*\\s*";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(str);
return matcher.matches();
}
问题的关键就是连写的数字超过2个就是个3位数则不符合,有一个或是更多-号则也不符合。于是可以用正则表达式验证。
传入的参数:
只要包括你的关键数字即可,无论是用()、[]等括起来与否,比如可以是:(23,234)、[23,-23]等。
只要数字间无空格即可,其它地方有空格也无妨,如:( 23 , - 43 )。
两个数间的间隔也可以是其它符号。

what do you want? I do not under