• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

pyramid of numbers

 
Marshal
Posts: 79393
377
  • Number of slices to send:
    Optional 'thank-you' note:
Why have you marked all the methods static in the second version?
Why do your methods in the first version return this rather than an int[] or similar? If you are reading into a field of the current object, why not make the method void? There may be a good reason for returning this: you can write
myObject.foo(...).bar(...).baz(...).biz(...).buzz(...);
If you go through the API for StringBuilder you will see that is how must of its methods are designed.
I suggest you indent your Streams code differently:-You can replace the sort() call with this:-It is probably better to sort the IntStream in line 3 than the Stream<String> in line 2, otherwise "19" will come before "2".

For consecutive numbers, consider starting with the IntStream#range() and IntStream#rangeClosed() methods.
 
Greenhorn
Posts: 3
  • Number of slices to send:
    Optional 'thank-you' note:
I marked all the static methods in the second version to simplify the code.
In my first version, my methods return this because I wanted to write something like object.method1().method(). It was only for that.

Thanks for your suggestions, it makes the code clearer.    
 
Sheriff
Posts: 7125
184
  • Number of slices to send:
    Optional 'thank-you' note:

sai rama krishna wrote:
i wonder why the method returns App like below

public App createArrayOfDigits()


It is so the methods can be chained together like this:

[edit] Oops, didn't see that this had already been answered.
 
Ranch Hand
Posts: 948
2
  • Number of slices to send:
    Optional 'thank-you' note:
Saisir les chiffres: 1384
  1
 333
44444
8888888

i am able to see output.

I never saw a method returning its own class object? any other similar use cases or links or examples where method returns its own class object? it looks bit odd as i am familiar with returning String int etc mostly
 
Knute Snortum
Sheriff
Posts: 7125
184
  • Number of slices to send:
    Optional 'thank-you' note:

sai rama krishna wrote:I never saw a method returning its own class object? any other similar use cases or links or examples where method returns its own class object? it looks bit odd as i am familiar with returning String int etc mostly


The builder pattern uses this technique.  I use this pattern a lot.  It's great for creating objects that have many fields or a lot of optional parameters.
 
sai rama krishna
Ranch Hand
Posts: 948
2
  • Number of slices to send:
    Optional 'thank-you' note:
sure. I will do that



in above code what is ::

i never seen such operator? please advise
 
sai rama krishna
Ranch Hand
Posts: 948
2
  • Number of slices to send:
    Optional 'thank-you' note:
instead of  scanner.nextLine() can i use scanner.next()?
what is meaning of nextLine() method here?
i am entering input like
23192
etc in the same line right not next line?
 
Campbell Ritchie
Marshal
Posts: 79393
377
  • Number of slices to send:
    Optional 'thank-you' note:
The nextLine method returns from the current position of the cursor to the next instance of line end characters.
The next method returns the net token whether it is on the same line or not.
For the :: operator go through the Java™ Tutorials section and look for the part called method references.
 
Knute Snortum
Sheriff
Posts: 7125
184
  • Number of slices to send:
    Optional 'thank-you' note:
Scanner#nextLine() returns everything up to and including the text separator.  Scanner#next() returns the next token.

In practical terms, next() is the missing nextString() function of Scanner -- with one limitation: it cannot return an empty String.  If you can live with that, only use next().  If you need to be able to get an empty String, things get complicated.  
 
Don't get me started about those stupid light bulbs.
reply
    Bookmark Topic Watch Topic
  • New Topic
vceplus-200-125    | boson-200-125    | training-cissp    | actualtests-cissp    | techexams-cissp    | gratisexams-300-075    | pearsonitcertification-210-260    | examsboost-210-260    | examsforall-210-260    | dumps4free-210-260    | reddit-210-260    | cisexams-352-001    | itexamfox-352-001    | passguaranteed-352-001    | passeasily-352-001    | freeccnastudyguide-200-120    | gocertify-200-120    | passcerty-200-120    | certifyguide-70-980    | dumpscollection-70-980    | examcollection-70-534    | cbtnuggets-210-065    | examfiles-400-051    | passitdump-400-051    | pearsonitcertification-70-462    | anderseide-70-347    | thomas-70-533    | research-1V0-605    | topix-102-400    | certdepot-EX200    | pearsonit-640-916    | itproguru-70-533    | reddit-100-105    | channel9-70-346    | anderseide-70-346    | theiia-IIA-CIA-PART3    | certificationHP-hp0-s41    | pearsonitcertification-640-916    | anderMicrosoft-70-534    | cathMicrosoft-70-462    | examcollection-cca-500    | techexams-gcih    | mslearn-70-346    | measureup-70-486    | pass4sure-hp0-s41    | iiba-640-916    | itsecurity-sscp    | cbtnuggets-300-320    | blogged-70-486    | pass4sure-IIA-CIA-PART1    | cbtnuggets-100-101    | developerhandbook-70-486    | lpicisco-101    | mylearn-1V0-605    | tomsitpro-cism    | gnosis-101    | channel9Mic-70-534    | ipass-IIA-CIA-PART1    | forcerts-70-417    | tests-sy0-401    | ipasstheciaexam-IIA-CIA-PART3    | mostcisco-300-135    | buildazure-70-533    | cloudera-cca-500    | pdf4cert-2v0-621    | f5cisco-101    | gocertify-1z0-062    | quora-640-916    | micrcosoft-70-480    | brain2pass-70-417    | examcompass-sy0-401    | global-EX200    | iassc-ICGB    | vceplus-300-115    | quizlet-810-403    | cbtnuggets-70-697    | educationOracle-1Z0-434    | channel9-70-534    | officialcerts-400-051    | examsboost-IIA-CIA-PART1    | networktut-300-135    | teststarter-300-206    | pluralsight-70-486    | coding-70-486    | freeccna-100-101    | digitaltut-300-101    | iiba-CBAP    | virtuallymikebrown-640-916    | isaca-cism    | whizlabs-pmp    | techexams-70-980    | ciscopress-300-115    | techtarget-cism    | pearsonitcertification-300-070    | testking-2v0-621    | isacaNew-cism    | simplilearn-pmi-rmp    | simplilearn-pmp    | educationOracle-1z0-809    | education-1z0-809    | teachertube-1Z0-434    | villanovau-CBAP    | quora-300-206    | certifyguide-300-208    | cbtnuggets-100-105    | flydumps-70-417    | gratisexams-1V0-605    | ituonline-1z0-062    | techexams-cas-002    | simplilearn-70-534    | pluralsight-70-697    | theiia-IIA-CIA-PART1    | itexamtips-400-051    | pearsonitcertification-EX200    | pluralsight-70-480    | learn-hp0-s42    | giac-gpen    | mindhub-102-400    | coursesmsu-CBAP    | examsforall-2v0-621    | developerhandbook-70-487    | root-EX200    | coderanch-1z0-809    | getfreedumps-1z0-062    | comptia-cas-002    | quora-1z0-809    | boson-300-135    | killtest-2v0-621    | learncia-IIA-CIA-PART3    | computer-gcih    | universitycloudera-cca-500    | itexamrun-70-410    | certificationHPv2-hp0-s41    | certskills-100-105    | skipitnow-70-417    | gocertify-sy0-401    | prep4sure-70-417    | simplilearn-cisa    |
http://www.pmsas.pr.gov.br/wp-content/    | http://www.pmsas.pr.gov.br/wp-content/    |