[Show all top banners]
Back to: Computer/IT Refresh page to view new replies
 Need hep with JAVA...Any IT experts...
[VIEWED 5234 TIMES]
SAVE! for ease of future access.
Posted on 02-10-10 2:26 AM     Reply [Subscribe]
Login in to Rate this Post:     0       ?    
 

professional  ta hoina,  tara eikdum  sikaru  ni hoina,    yeso  code padhdha  ra  problem  chain  eua character  matrai   return  bhayecha  bhanda  kheri  problem  yo  chain  line  ma  bahye   jasto   lagyo:


for (int i=0; i < plainText.length(); i++) {
        char decode = (char)(plainText.charAt(i) + newShift);

 

         char[] done = {decode};
        cipherText= new String(done);
        }


yahan  new String  chain  pani  loop   ko  bhitra  parecha,  so it  creates a  new  string  object every  time
u  go  through the  loop,  storing  only  one   character that is  stored in  done.   therefore,   it returns   the last  character.
also,   String in java is  "fixed" in a sense  that u cannot append  i t,   so  once u  create a  string,  changing  somethign in  it  basically  means  u have to create a new string... which is  what  u seem to  be  doing,  but if  that is what  u are  trying  to do,   u   might  need  one   to do  something  on this  line:

cipherText = new String(null); // i am not sure if u need this,  since i  am not sure if String by default
        // gets set to null.
for (int i=0; i < plainText.length(); i++) {
        char decode = (char)(plainText.charAt(i) + newShift);


 



         char[] done = {decode};
        cipherText= new String(cipherText + done);
        }



a + with a string  on either side will try  to perform  the concat,   i am not sure  hoewever  if the compiler can automatically cast the char array as  string. if not,  u  may not  need the aray at all, and  just  do:

cipherText= new String(cipherText + decode);

this  from what i remember  might  work.
this however, is  not the most efficient way, i think, since  u are creating a new string every time in the loop. a better  way  would  be to  use  StringBuilder / StringBuffer.

here is a java doc link to stringbuilder

http://java.sun.com/javase/6/docs/api/java/lang/StringBuilder.html#append%28char%29

so f u declare cipherText as  Stringbuilder ,  then u can  use  something on the lines of

 cipherText.append(decode)

to  build the  string,

then  return  it as :

cipherText.toString();

since  u r  trying to return a String type  object.

don't  know  ur level of expertise,  but since  the  q is about  encryption,  i am  assuming u are familiar with  java  docs.
timilai java  doc  padhne  baani chaina/ aunna  bhane  let me know,   ali ali explain  garne   koshish  garumla.

solution  thyakkai chahin  k   huncha  bhanera chahin  bannu sakdina,   ahile  compile  garera  debug  garna   jhyau  lagi racha,  hopefully this helps somewhat.
Last edited: 10-Feb-10 02:29 AM

 
Posted on 02-10-10 3:53 PM     Reply [Subscribe]
Login in to Rate this Post:     0       ?    
 

Define "char[] done" outside the for loop. And add every character shift in it inside the loop as you have done.


Also do this "cipherText= new String(done);" or " cipherText = done.toString()" outside the for loop.


After that you will be good to go...


 


Please Log in! to be able to reply! If you don't have a login, please register here.

YOU CAN ALSO



IN ORDER TO POST!




Within last 7 days
Recommended Popular Threads Controvertial Threads
TPS Re-registration case still pending ..
To Sajha admin
NOTE: The opinions here represent the opinions of the individual posters, and not of Sajha.com. It is not possible for sajha.com to monitor all the postings, since sajha.com merely seeks to provide a cyber location for discussing ideas and concerns related to Nepal and the Nepalis. Please send an email to admin@sajha.com using a valid email address if you want any posting to be considered for deletion. Your request will be handled on a one to one basis. Sajha.com is a service please don't abuse it. - Thanks.

Sajha.com Privacy Policy

Like us in Facebook!

↑ Back to Top
free counters