次の出力を取得したい:
こんにちはスティーブ・アンドリュース!
これらは私の変数です:
a = "steve";
b = "Andrew"
私はこれを試しました:
System.out.print("Hello " + a + " " + b + "s");
.toUpper()
をどこに置くべきかわかりませんsteve
。s
は大文字にする必要があります。どうすればいいですか?
を使用StringUtils.capitalize(a)
して、
"Hello " + StringUtils.capitalize(a) + " " + b + "s"
Character.toTitleCase(char)に従って、最初の文字をタイトルケースに変更する文字列を大文字にします。他の文字は変更されません。
StringUtils.capitalize(str)を使用できます。または、自分で実行したい場合は、次のようにします。
public static String capitalize(String str) {
int strLen;
if (str == null || (strLen = str.length()) == 0) {
return str;
}
return new StringBuffer(strLen)
.append(Character.toTitleCase(str.charAt(0)))
.append(str.substring(1))
.toString();
}
次の方法を試すこともできます。
public static String capitalize(String str) {
str = (char) (str.charAt(0) - 32) + str.substring(1);
return str;
}
ただし、このメソッドは str の最初の文字が実際に小文字であると想定していることに注意してください。
最後に、私は stringutils なしでそれをやろうとしました..しかし、とにかく、助けてくれたすべての人に感謝します:)
public class Hello
{
public static void main(String[] args){
String a = "steve";
String b = "Andrew";
String firstletter = a.substring(0,1);
String remainder = a.substring(1);
String capitalized = firstletter.toUpperCase() + remainder.toLowerCase();
System.out.print("Hello " + capitalized + " " + b + "s" );
}
}