JavaでCamelCase関数を作成しています。これは文字列this_is_a_sentence
を返し、ThisIsASentence
を返します。私の主な問題は文字列内のさまざまな文字を扱うことです。JavaのCamelCaser関数、デバッグの問題
は、これまでのところ私が持っている:
import java.util.Scanner;
public class Main{
public static String camelCaser(String str){
char[] strChr = str.toCharArray();
strChr[0] = strChr[0].toUpperCase;
for(int i = 0; i < strChr.length; i++){
if (strChr[i] == '_'){
strChr[i] = strChr[i+1].toUpperCase;
strChr[i+1] = "";
}
}
String newStr = new String(strChr);
return newStr;
}
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("String: ");
String str = input.next();
System.out.printf("Converting: %s into %s", str, camelCaser(str));
}
}
私の主な問題は、あなたが個々の文字私はC
にするために使用していますと同じ方法を変更することができないということのようです。私はあなたがCharacter
と呼ばれるクラスを使用することができることを読んだが、私はそれを使用する方法を理解できない。問題のJavaドキュメントhttps://docs.oracle.com/javase/7/docs/api/java/lang/Character.htmlも私を助けませんでした。
ありがとうございます!この行が何をしているのか説明してもらえますか? 'String reply = new String(strChr); reply = reply.replace( "_"、 ""); ' –
注1)これは本当にそれが後に続く '' '_'''を本当に扱っていません。 –
彼は元のコードでもなかったので、なぜ私のコードでもそれに対処していません。 –