Win a copy of Kotlin in Action this week in the Kotlin forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

explain the working  RSS feed

 
Soni Mitesh
Ranch Hand
Posts: 33
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
public class examp2
{
public static void main(String[] args)
{
String x="Java";
String x2;
x=x.concat("Rules");
for(int i=0;i<x.length();i++)
{
x=x.substring(i);
x2=x;
System.out.println(x2);
}
}
}

works different then the following one

......
.......
for(;
{
x2=x.substring(i);
System.out.println(x2);
}
.....
.....

how the references are assigned please explain
thanks
 
bart zagers
Ranch Hand
Posts: 234
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In the first example, you assign the substring back to x. This makes x shorter each time it loops. Therefore the loop will be executed less times than in the second example. This process goes faster and faster as you take substrings of substrings...

In the second example x is not modified (the substring method itself does not modify the string)and therefore will nicely give you as many substrings as x is long.
 
Soni Mitesh
Ranch Hand
Posts: 33
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I got that, thanks bart
 
Don't get me started about those stupid light bulbs.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!