she*_*hep 72 java char uppercase
String lower = Name.toLowerCase();
int a = Name.indexOf(" ",0);
String first = lower.substring(0, a);
String last = lower.substring(a+1);
char f = first.charAt(0);
char l = last.charAt(0);
System.out.println(l);
Run Code Online (Sandbox Code Playgroud)
如何将F和L变量转换为大写.
Bal*_*usC 136
你可以用Character#toUpperCase()它.
char fUpper = Character.toUpperCase(f);
char lUpper = Character.toUpperCase(l);
Run Code Online (Sandbox Code Playgroud)
然而它有一些局限性,因为世界意识到比16bit char范围内更多的字符.另请参阅以下javadoc摘录:
注意:此方法无法处理 补充字符.要支持所有Unicode字符(包括增补字符),请使用该
toUpperCase(int)方法.
Rah*_*rma 27
您可以尝试使用布尔运算进行以下转换,而不是使用现有的实用程序:
大写:
char upperChar = 'l' & 0x5f
Run Code Online (Sandbox Code Playgroud)
小写:
char lowerChar = 'L' ^ 0x20
Run Code Online (Sandbox Code Playgroud)
这个怎么运作:
二进制,十六进制和十进制表:
------------------------------------------
| Binary | Hexadecimal | Decimal |
-----------------------------------------
| 1011111 | 0x5f | 95 |
------------------------------------------
| 100000 | 0x20 | 32 |
------------------------------------------
Run Code Online (Sandbox Code Playgroud)
我们举一个小l到L转换的例子:
二进制AND操作: (l & 0x5f)
l字符具有ASCII 108并且01101100是二进制表示.
1101100
& 1011111
-----------
1001100 = 76 in decimal which is **ASCII** code of L
Run Code Online (Sandbox Code Playgroud)
类似地,L以l转换:
二进制异或操作: (L ^ 0x20)
1001100
^ 0100000
-----------
1101100 = 108 in decimal which is **ASCII** code of l
Run Code Online (Sandbox Code Playgroud)
And*_*s_D 18
看看这个java.lang.Character类,它提供了很多有用的方法来转换或测试字符.
Dav*_*ton 13
f = Character.toUpperCase(f);
l = Character.toUpperCase(l);
Run Code Online (Sandbox Code Playgroud)
由于您知道字符是小写的,因此您可以减去相应的 ASCII 值以使它们变为大写:
char a = 'a';
a -= 32;
System.out.println("a is " + a); //a is A
Run Code Online (Sandbox Code Playgroud)
这是一个ASCII 表供参考
System.out.println(first.substring(0,1).toUpperCase());
System.out.println(last.substring(0,1).toUpperCase());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
283595 次 |
| 最近记录: |