char
if ステートメントを使用せずに小文字を大文字に変換するにはどうすればよいですか? つまり、次のようなコードは使用しないでください。
if(c > 'a' && c < 'z')
{
c = c-32;
}
char
if ステートメントを使用せずに小文字を大文字に変換するにはどうすればよいですか? つまり、次のようなコードは使用しないでください。
if(c > 'a' && c < 'z')
{
c = c-32;
}
これを使用できます:
char uppercase = Character.toUpperCase(c);
使用Character.toUpperCase(char)
:
UnicodeData ファイルのケース マッピング情報を使用して、文字引数を大文字に変換します。
たとえば、 をCharacter.toUpperCase('a')
返します'A'
。
したがって、おそらく必要な完全なコードは次のとおりです。
c = Character.toUpperCase(c);
三項演算子を使用できます。あなたの場合、次のようなことを試してください:
c = (c >= 'a' && c <= 'z') ? c = c - 32 : c;
文字が ASCII アルファベットであることが確実な場合は、ラテン文字の小文字と大文字の違いは ASCII テーブルでは 1 ビットしかないため、小文字にするビットを設定解除できます。
あなたは簡単に行うことができます:
char upper = c & 0x5F;