java 截取字符串

qq_16590545 2014-07-04 09:04:19

1.值不是固定的

例如:String str="1.02.03"; 我要的值为:1.02
如果 str="1.02"; 我要的值为:1

就是字符串中有两个小数点
if(小数点等于2)
我要的为第二次小数点前面的
if(小数点等于2)
我要的为第三次小数点前面的


请问一下,这样的值怎么截取啊?
...全文
166 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
穷灬开o心 2014-07-04
  • 打赏
  • 举报
回复
引用 1 楼 longtian1213 的回复:

	public static void main(String[] args) {
		//String str = "1.02.03";
		String str = "1.02";
		String[] strs = str.split("\\.");
		if(strs.length  == 3){
			System.out.println(strs[0] + "." + strs[1]);
		}
		if(strs.length == 2){
			System.out.println(strs[0]);
		}
	}
这个正解
zgd77521 2014-07-04
  • 打赏
  • 举报
回复


public static void main(String[] args) {
		String str = "12.123.321";
		//第一种方法:
		if(str.indexOf(".")==str.lastIndexOf(".")){
			str = str.substring(0, str.indexOf("."));
			System.out.println(str);
		}else{		
			str = str.substring(0, str.lastIndexOf("."));
			System.out.println(str);
		}
		//第二种方法:
		String str2 = "12.123.321";
		if(str2.split("\\.").length==2){
			str2 = str2.split("\\.")[0];
			System.out.println(str2);
		}else{		
			str2 = str2.substring(0, str2.lastIndexOf("."));
			System.out.println(str2);
		}
	}

nyxiaobin123 2014-07-04
  • 打赏
  • 举报
回复
5楼和6楼有一个是对的
lgc8023 2014-07-04
  • 打赏
  • 举报
回复
引用 5 楼 yanghongjy 的回复:
String str="1.02.03"; str.subString(0, str.lastIndex(".")); 取最后小数点位置
楼上正解
jiafeng_lee 2014-07-04
  • 打赏
  • 举报
回复
你这是根据小数点来判断的str.index(".")取第一个字符串出现的位置str.lastindex(".")取最后一次字符串出现的位置 String Str = "1.01.02"; str.subString(0,str.lastindex(".")-1);
yanghongjy 2014-07-04
  • 打赏
  • 举报
回复
String str="1.02.03"; str.subString(0, str.lastIndex(".")); 取最后小数点位置
Coder_D 2014-07-04
  • 打赏
  • 举报
回复
我擦...回复错帖子了..
Coder_D 2014-07-04
  • 打赏
  • 举报
回复
在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区分为,#可以进行与编译,进行类型匹配,而$不进行数据类型匹配,例如: select * from table where id = #id# ,其中如果字段id为字符型,那么#id#表示的就是'id'类型,如果id为整型,那么#id#就是id类型。 select * from table where id = $id$ ,如果字段id为整型,Sql语句就不会出错,但是如果字段id为字符型,那么Sql语句应该写成 select * from table where id = '$id$'
shixitong 2014-07-04
  • 打赏
  • 举报
回复
描述不懂,两个if条件一样
S117 2014-07-04
  • 打赏
  • 举报
回复

	public static void main(String[] args) {
		//String str = "1.02.03";
		String str = "1.02";
		String[] strs = str.split("\\.");
		if(strs.length  == 3){
			System.out.println(strs[0] + "." + strs[1]);
		}
		if(strs.length == 2){
			System.out.println(strs[0]);
		}
	}

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧