2016-10-24 7 views
1

文字列から入力されたユーザーデータを入力し、空白をスキップしながら整数値に変換するハッシュ関数の作成を支援したいと考えています。私はなぜそれが動作していない、と入力することがありますし、助けに感謝する白いスペースを取得する方法を困惑しています。Java:ハッシュ関数が入力した文字列

コード:

public static void main(String[] args) { 
    Scanner inScan; 
    String inStr; 
    int outHash; 

    inScan = new Scanner(System.in); // Assignment of Scanner 

    System.out.print("Enter string to create hash: "); // Asks for String Input 
    inStr = inScan.nextLine(); // String Input 

    // Start of Hash Function 
    String hashValue = inStr; 
    hashValue = inStr.hashCode(); 
    System.out.println(hashValue); 
+0

何が問題なのですか? –

+0

何が問題なのですか?どんなアウトプットがあなたの期待しているものなのですか?表示される正確なエラーメッセージは何ですか? – puhlen

+0

私は、文字列の入力が何であれ、何らかの並べ替えの整数出力を期待しています。 – Aramza

答えて

1

あなたのコードを変更せずinStrhashCode()を呼び出します。

String a = "a bc"; 
String b = "ab c"; 
String c = "a b c"; 
int hashA = a.<remove-white-space>.hashCode(); 
int hashB = b.<remove-white-space>.hashCode(); 
int hashC = c.<remove-white-space>.hashCode(); 

<remove-white-space>はあなたが記述する必要があるものです:あなたは同一であり、ホワイトスペースのみが異なる文字列の確認ハッシュコードを作るためにhashCodeを呼び出す前にinStrから空白をクリアする必要があります。このタスクのヘルプについては、this Q&Aにお問い合わせください。

あなたの仕事を正しく行うなら、hashA,hashB、およびhashCは互いに等しいでしょう。

関連する問題