java小练习:判断一个数字是否为纯小数

2018/2/1

java

1.如何判断纯小数

 1.遍历所有的字符串单元不为纯数字

2.判断是否存在小数点

3.判断小数点的位置是否在第一个或者在最后一个(indexOf)

4.判断小数点的唯一性:(包含小数点且正反遍历的小数点位置相同

package package1;

import java.util.Scanner;

/*判断一个字符串是否是纯小数
 * 1.不为纯数字,存在小数点
 * 2.小数点不在第一位和最后一位
 * 3.只能有一个小数点*/
public class isDemical {
	
		public static boolean isDemical(String str) {
		boolean isDemical=true;
      /*输入字符串*/
		
      for(int i=0;i<str.length();i++)
      {
    	  /*判断在字符串中的各个单元是不是数字*/
    	  if(!(Character.isDigit(str.charAt(i))))
    	  {
    		  if(str.charAt(i)=='.')
    		  {
    			  if(i==0||i==str.length()-1)
    			  {
    				  System.out.println("该小数点位于第一位或者最后一位,错误");
    				  isDemical=false;
    				  break;
    			  }
    		  }
    		  else
    		  {
    			  System.out.println("不含小数点");
    			 
				  break;
    		  }
    	  }
    	  /*判断字符串中只有一个小数点*/
    	  /*顺序遍历小数点的坐标和逆序遍历相同*/
    	  if(!(str.contains(".")&&str.indexOf(".")==str.lastIndexOf(".")))
    	  {
    		  System.out.println("该字符串中为纯数字或包含多个小数点,不为纯小数");
    		  isDemical=false;
    		  break;
    		 
    		
    	  }
    	  else 
    	  {
    		 System.out.println("该数为纯小数");
    		 break;
    	  }
    	  
   
      }
   
      
      return isDemical;
    
	}
		public static void main(String[] args) {
			while(true)
			{
			System.out.println("请输出一个字符串");
		    String input = new Scanner(System.in).nextLine();
		
		    isDemical( input);
		    
		    System.out.println("是否继续程序"+"y/n");
		    String str=new Scanner(System.in).nextLine();
		    if(str.equals("n"))
		    break;
		    
			}
		}
}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值