2016-05-14 9 views
1
package practice; 

import java.util.Scanner; 

public class Shuvo { 

    public static void main(String[] args) { 
     System.out.print("please Enter your name: "); 
     char name; 
     Scanner user= new Scanner(System.in); 
     name = user.next().charAt('0'); 
     System.out.println("HELLOW" +name); //<- why this isn't working?? 
     user.close(); 
    } 
} 

出力でのchar型の値を印刷することはできません。外の文字列インデックス:なぜ私は私の出力

自分の名前を入力してください。shuvo

例外をスレッドで「メイン」java.lang.StringIndexOutOfBoundsException範囲:48

at java.lang.String.charAt(Unknown Source) 
at practice.Shuvo.main(Shuvo.java:11) 
+0

は、Uをありがとうしかし、私は "のSystem.out.println(" hellow "+名)" を書く際に知ってほしい出力は "hellow shuvo" 私を示しています。しかしそれはうまくいかない。どのように私はこの出力があり、なぜこれが動作していないのですか? – shuvo

答えて

3

user.next().charAt('0');'0'とインデックスに対応する文字を返します。

'0'は、実際には数値で、その小数値は48です。この数値はcharです。入力が48文字ではないので、ArrayIndexOfOfBoundsExceptionが得られます。

用途:

user.next().charAt(0); 

入力からあなたの最初の文字を返します。

関連する問題