2011-08-25 5 views
0
/* 
* Compares user input and checks whether they are anagrams 
* 
*/ 

import java.util.Scanner; 


public class Anagram 
{ 
    public static void main(String[] args) 
    { 

Scanner sc = new Scanner(System.in); 
System.out.print("Enter first sentence: "); 
String s1 = sc.nextLine(); 
System.out.print("Enter second sentence: "); 
String s2 = sc.nextLine(); 

s1.toLowerCase(); 
String new1 = ""; 
for(char ch = 'a'; ch <= 'z'; ch++){ 
    int i; 
    for(i = 0; i <s1.length(); i++){ 
    if(ch == s1.charAt(i)){ 
     System.out.print(ch + " are the letters of " + s1 + " in order "); 
     break; 
    } 
    } 
} 
s2.toLowerCase(); 
String new2 = new String(); 
for(char ch2 = 'a'; ch2 <= 'z'; ch2++){ 
    int i2; 
    for(i2 = 0; i2 <s2.length(); i2++){ 
    if(ch2 == s2.charAt(i2)){ 
     System.out.print(ch2 + " are the letters of " + s2 + " in order "); 
     break; 
    } 
    } 
} 
    } 
} 

이 숙제를하는 올바른 방법입니다 전에 내 질문에 문제가 새 문자열을 만들고 모든 문자열을 새 문자열을 전달하는 데 문제가 제외하고 잘 작동합니다. 그러나 이것은 stringbuffer 또는 append()를 사용하지 않고 수행해야합니다.버퍼 또는 추가 방법을 사용하지 않고 추가하는 방법은 무엇입니까?

답변

2

문자열을 연결하는 + 연산자를 사용할 수 있습니다. 그러나 그것이 숙제의 목적이 아니라고 생각합니다. char 배열을 생성 한 다음이 배열을 사용하여 문자열을 생성 할 것으로 예상됩니다.

하지만 그건 사람입니다. 숙제 인 경우 충분한 팁을 얻었습니다. 직접 해보고 Stackoverflow에 오신 것을 환영합니다.

+1

아니요. 문자가 문자와 일치하면 새 빈 문자열 (알파벳 순서로 각 문자를 저장할 준비가 되었음) 만 만듭니다. 배열에 대해 알지 못했기 때문에 문자를 새 문자열에 추가하십시오. 아직 사용하지 못했습니다. –

+2

@ Ron_ish이 경우 제안 된대로'+'또는'+ = '연산자를 사용하십시오. – Thomas

+0

그러나 사용 된 하나의 char + 다음 줄 다른 줄에 인쇄하고 문자열로 변환하지 않습니다. –

관련 문제