폰으로쓰는거라이해좀ㅜㅜ
이거 str값이랑 뒤집은거랑 비교해서(ex 12 == 21 펄스 101 == 101트루)
투르면 포빠져나오구
다르면펄스출력하고 계속 더해서 나온값으로 비교하는건데 (12+21= 33)
왜같은데도 펄스로나오지?ㅜㅜ
스트링버퍼는뒤집으면 값 달라져??맨뒤에뭐 널값같은거붙나??어디서들어본거같기도하고..
그롬 비교하는거어떤걸로하지??ㅜㅜㅜ
public class A196
{
public static void main(String[] args)
{
long num1;
for(int a = 1; a <= 10; a++){
num1 = a;
for(int i = 0; i < 10; i++){
StringBuffer str = new StringBuffer(String.valueOf(num1));
num1 = num1 + Long.parseLong(str.reverse().toString());
str.replace(0, String.valueOf(num1).length(), String.valueOf(num1));
System.out.print(str.toString() + " =? " +str.reverse().toString());
if(str.toString() == str.reverse().toString()){
System.out.println(" true");
break;
}else{
System.out.println(" false");
}
}
}
}
}
이거 str값이랑 뒤집은거랑 비교해서(ex 12 == 21 펄스 101 == 101트루)
투르면 포빠져나오구
다르면펄스출력하고 계속 더해서 나온값으로 비교하는건데 (12+21= 33)
왜같은데도 펄스로나오지?ㅜㅜ
스트링버퍼는뒤집으면 값 달라져??맨뒤에뭐 널값같은거붙나??어디서들어본거같기도하고..
그롬 비교하는거어떤걸로하지??ㅜㅜㅜ
public class A196
{
public static void main(String[] args)
{
long num1;
for(int a = 1; a <= 10; a++){
num1 = a;
for(int i = 0; i < 10; i++){
StringBuffer str = new StringBuffer(String.valueOf(num1));
num1 = num1 + Long.parseLong(str.reverse().toString());
str.replace(0, String.valueOf(num1).length(), String.valueOf(num1));
System.out.print(str.toString() + " =? " +str.reverse().toString());
if(str.toString() == str.reverse().toString()){
System.out.println(" true");
break;
}else{
System.out.println(" false");
}
}
}
}
}
두 문자열의 \'값\'을 비교하고 싶으면 str.compareTo(str.reverse()) 이렇게 해야될껄. ==로 직접 비교하면 주소를 비교하게 되니까 값이 같아도 false로 나오지
아 마따 까먹고잇엇다 정석책공부할때 는는이랑 이퀄이랑 차이나왔던거 기억나 ㅜㅜ고마오 이퀄로하니까 트루나온당 근데문제가 모두트루나온닼ㅋㅋ내가뭐잘못짠듯 다시해봐야지
노노어빠플그래머어빠둘다땡쿠^!!!!!!
둘다스트링벨류햇는데도트루나오네 아이번엔모지 ㅜㅜ
아니디된다!!!!
내가바보같이 투스트링안함ㅜㅜ 이젠제대로출력돼 다고마워ㅜㅜ