対称の数を確認する方法は?
public static int Symmetric(int a) {
if(new StringBuilder(Integer.toString(a)) ==
new StringBuilder(Integer.toString(a)).reverse())
return a;
else
return 0;
}
私はこのようにやろうとしますが、常に0を返します。
を使用してs (またはs)==
を比較することはできません。使用する必要があります。また、比較する前 に sを s に戻す
必要があります。String
StringBuilder
equals()
StringBuilder
String
編集:
また、最初の必要はありませんStringBuilder
:
public static int symmetric(int a) {
if (Integer.toString(a).equals(new StringBuilder(Integer.toString(a)).reverse().toString()))
return a;
else
return 0;
}
平等については、こちらの JLSで説明されています。
Strings で equals() を使用する必要があります: StringBuilder.toString()。equals() .
public static int Symmetric( int a ) {
return
new StringBuilder(Integer.toString(a)).toString().equals(
StringBuilder(Integer.toString(a)).reverse().toString())
? a : 0;
}