게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
자바 초보 질문입니다.
게시물ID : programmer_19958짧은주소 복사하기
작성자 : 곰돌이푸푸우
추천 : 0
조회수 : 463회
댓글수 : 2개
등록시간 : 2017/03/12 23:09:27
옵션
  • 본인삭제금지
import java.util.*;

public class zero_nine {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("숫자를 입력하세요 =");
String String_numbers =  sc.nextLine(); //스트링
char [] char_numbers = String_numbers.toCharArray();
Arrays.sort(char_numbers);
String blank="";
for(char i : char_numbers){blank += Character.toString(i);}

String standard="0123456789";
if (blank == standard){System.out.println("True");}
else{System.out.println("False");}
}
}



0~9까지의 문자로 된 숫자를 입력 받았을 때, 이 입력 값이 0~9까지의 숫자가 각각 한 번 씩만 사용된 것인지 확인하는 함수를 구하는 프로그래밍입니다.
이때 위의 코딩에서 0123456789 를 입력값으로 줄시,
String blank = "0123456789" 가 되는데, 왜 String standard와 String blank가 다르다고 인식될까요?

초보의 짐작으로는 참조하는 주소값이 달라서 그런거 같은데,, 알고리즘은 위와 같은 상태를 유지한채료 코딩값이 True가 나오게 하려면 어떻게 해야하나요?
파이썬하다 자바로 넘어오니까 헷갈리네요 ㅠ




전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호