2016-07-10 8 views
0

私は、入力を受け取り、それにユニークな文字があるかどうかを調べる簡単なコンソールアプリケーションを試そうとしています。 "a"の入力を提供すると、文字列を "a"として取り込み、先行するスペースを無視します。なぜConsole.ReadLine()はスペースを無視しますか?

なぜこのようなことが起こっているのか、それに文字列の一部としてスペースを受け入れる方法を理解してもらえますか?

using System; 
using System.Collections.Generic; 

namespace CrackingTheCodingInterView 
{ 
    public class CheckUniqueChars 
    { 
     public static void Main() 
     { 
      string inputString; 

      bool checkUnique = false; 

      Console.WriteLine("Enter string to check for unique chars: "); 

      inputString = Console.ReadLine(); 

      checkUnique = UniqueChars(inputString); 

      Console.WriteLine("String is: {0}", inputString); 

      string output = checkUnique ? "has" : "does not have"; 

      Console.WriteLine("The input string {0} unique chars", output); 

     } 

     public static bool UniqueChars(string inputString) 
     { 
      List<char> uniqueCharsList = new List<char>(); 

      foreach(char c in inputString) 
      { 
       if(uniqueCharsList.Contains(c)) 
       { 
        return false; 
       } 
       else 
       { 
        uniqueCharsList.Add(c); 
       } 
      } 

      return true; 
     } 
    } 
} 

ありがとう!

+2

'Console.ReadLine()は'、私のための空白を削除するブレークポイントを設定し、チェックしません 'inputString' – SimpleVar

+0

そうですか。 @SimpleVarについてお知らせいただきありがとうございます。私はコードを作成しようとしているこのオンラインエディタの問題かもしれません - https://dotnetfiddle.net/4eAyrn – Ankit

+0

それは確かです。 ReSharperでVSをお勧めします – SimpleVar

答えて

1

これが答えではありませんが、その正常に動作して無視していないスペースが

enter image description here

+0

ありがとうSufyan。はい、私がコーディングしていたオンラインエディタに問題があるようです。奇妙です。 https://dotnetfiddle.net/4eAyrn – Ankit

+0

コード –

+0

を提出する前に、検証やクリーンアップを行う可能性が高いですね。 @SimpleVarが示唆しているように、VSとResharperの使用に切り替えます。 – Ankit

関連する問題