2011-12-23 9 views
-1

私は試してみましたが、方法はありません。toUpperCase()メソッドを使用せずに、小文字を大文字に渡します。

小文字を大文字にする必要があります。

私はtoUpperCase()メソッドを使用する方法を知っていますが、私はそれなしでやりたいと思います。

これは私の失敗コードです:

import java.util.Scanner; 

public class ConvertLetters { 

    public static void main(String[] args) { 
     Scanner stdin = new Scanner(System.in); 
     System.out.print("enter a lower case letter"); 
     char letter = stdin.nextLine(); 
     int letter2 = 'A' + (letter - 'a'); 
     System.out.println("and we will refund your letter capitalized"); 
     System.out.print("Your letter: " + letter); 
     System.out.print("upper case equates to:"); 
     System.out.print(letter2); 
    } 
} 
+0

あなたはASCII変換だけに興味があると思いますか? – Perception

答えて

2

あなたは、私がこのコードには二つの問題を参照してくださいchar

char letter = stdin.nextLine().charAt(0); 
char letter2 = (char) ('A' + (letter - 'a')); 

または

char letter2 = (char) (letter - 32); 
+0

また、nextLine()ではなくnextInt()を使用する必要があります。 – aishwarya

+0

彼のコードはコンパイルされないでしょう。 –

1

で終了したいです。まず、文字列であるnextLine()を割り当てます。代わりに

char letter = stdin.nextLine().charAt(0); 

のようなものが必要な場合があります。第二に、あなたはこれらの変更により

System.out.print((char)letter2); 

を試し、intを印刷し、私はあなたのコードがあなたに良い結果を与えることになると思います。

当然、非ASCII文字では機能しません。

+0

はい!、多くの多くのありがとう!、それは解決を得るために私に3日かかりました –

関連する問題