A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 狱之一族 中级黑马   /  2013-4-1 20:08  /  1506 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

读取输入的整数,定义成方法,多次调用(如果用户输入的书数字,则返回,否则提示用户重新上入)这个我知道用循环语句,然后里面套判断语句,但是我搞不懂判断语句里的表达式该怎么写,求帮忙

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

8 个回复

倒序浏览
可以参考我以前在论坛发的一个方法,例如输入整数:

        /// <summary>
         /// 从控制台获取整型数字
        /// </summary>
         /// <returns></returns>
         static int GetIntNumber()
         {
             string inputStr;
             int intNumber;
             //无限循环,直到输入正确的整型数字
            while (true)
             {
                 inputStr = Console.ReadLine();
                 //当是整数
                if (int.TryParse(inputStr, out intNumber))
                 {
                     return intNumber;
                 }
                 else
                 {
                     Console.WriteLine("请输入整型数字");
                 }
             }
         }

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
表达式就是真假
int x=0
int y=1
if(x<y)←这里面只能判断真假
{
结果为真 就输出这里的语句 别的循环也是类似的
}
回复 使用道具 举报
写的一般,呵呵
  1.         static void ReadInt()
  2.         {
  3.             while (true)
  4.             {
  5.                 Console.Write("请输入整数:");
  6.                 try
  7.                 {
  8.                     int number = Convert.ToInt32(Console.ReadLine());//如果不是整数,这转化出错
  9.                     Console.WriteLine(number);
  10.                     continue;
  11.                 }
  12.                 catch
  13.                 {
  14.                     Console.WriteLine("输入非不合法,请重新输入!");
  15.                 }
  16.             }
  17.         }
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
DWC_5101 发表于 2013-4-1 20:16
可以参考我以前在论坛发的一个方法,例如输入整数:

        ///

学习了,很好
回复 使用道具 举报
  1.   public static int ReadInt()
  2.        {
  3.            while(true)
  4.            {
  5.              Console.WriteLine("请输入一个数字");
  6.            string input = Console.ReadLine();
  7.            int num;
  8.            /*利用int.TryParse(string s,out int i)把s转为int类型,转换成功返回true,并通过out
  9.             返回转换后的数i转换失败返回false*/
  10.            if (int.TryParse(input, out num))
  11.            { return num; }
  12.            }  
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 J_hom 于 2013-4-1 21:26 编辑

自己写的段代码:
import java.util.Scanner;
public class Test{
   public static void main(String args[]){
         System.out.println("数字是:"+getInt());
   }
//取得整数的方法
   public static int getInt(){
     Scanner scan=new Scanner(System.in);
         while(true){
           if(!scan.hasNextInt()){//不是整数继续执行
               System.out.println("请重新输入:");
                   scan.next();
           }else{
             return scan.nextInt();//如果输入的是整数则返回。
           }
         }
   }
}
回复 使用道具 举报
        /// <summary>
        /// 获取整型数字
        /// </summary>
        /// <returns></returns>
        static int GetInt()
        {
            int intNumber;
            //无限循环,直到输入正确的整型数字
            while (!int.TryParse(Console.ReadLine(), out intNumber))
            {
                Console.WriteLine("请输入整型数字:");
            }
            return intNumber;
        }

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报

            Console.WriteLine("请输入一个数?");
            int s = ReadInt();//调用方法
            Console.WriteLine("你输入的数为{0}",s);

            Console.ReadKey();
        }
        static int ReadInt()//定义一个方法
    {
        int  number=0;
     while(true)
     {
         try//检测是否出现异常
         {
             number = Convert.ToInt32(Console.ReadLine());//用number接收输入的数
             return number;//如果输入成功就把数返给number
         }
         catch//如果输入的不是数字直接输出下面这句话
         {
             Console.WriteLine("您的输入有误,请重新输入");
         }
     }

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马