繁体   English   中英

使用if来比较字符串c#

[英]Using if to compare strings c#

我试图比较字符串然后让它写 hi 如果字符串相等。 但是每当我输入 AS 时,我什么也得不到,因为我想将我的输入与之进行比较。

这是我的代码。

using System;

namespace testing121
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            long vrt;
            bool run;
            string pass = ("AS");
            run = true;
            string vrt2;
            while (run)
            {
                if (long.TryParse (Console.ReadLine (), out vrt)) {
                    vrt2 = Convert.ToString (vrt);
                    if (String.Equals (pass, vrt2) ) {
                        Console.WriteLine ("Hi");
                    }
                }
            }}}}

这段代码没有意义。 您正在输入AS ,然后检查它是否可以转换为long作为您的平等条件的一部分。 就这样做;

public static void Main (string[] args)
{
   string pass = "AS";

   if (Console.ReadLine() == pass)
       Console.WriteLine("hi");
}

然后,如果你想把它放在一个循环中或其他任何地方。 但我建议从最简单的最基本的东西开始。 当你运行这个程序并输入AS它会打印hi

因为当您检查if (long.TryParse (Console.ReadLine (), out vrt))时, TryParse的结果始终为False因为您没有提供那么长的数字。 并且控制台不会写你Hi

你也可以这样做...

string pass = "AS";

            if (pass.Equals(Console.ReadLine()))
            {
                Console.WriteLine("hi");   
            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM