Groups | Search | Server Info | Login | Register


Groups > comp.lang.java.programmer > #5386

Re: The greeting code in Java

From Stanimir Stamenkov <s7an10@netscape.net>
Newsgroups comp.lang.java.programmer
Subject Re: The greeting code in Java
Date 2011-06-19 19:07 +0300
Organization A noiseless patient Spider
Message-ID <itl6rc$qq1$1@dont-email.me> (permalink)
References <3d6aab49-9a4a-4614-af12-bb1c95bebbe7@w4g2000yqm.googlegroups.com>

Show all headers | View raw


Sun, 19 Jun 2011 06:06:17 -0700 (PDT), /Saeed Amrollahi/:

>      public static void main(String[] args) throws IOException {
>          System.out.print("Please enter your first name: ");
>          String name = new String();
>          Reader r = new InputStreamReader(System.in);
>          for (char ch; (ch = (char)(r.read())) != '\n'; name += ch) {}
>          System.out.println("Hello, " + name);
>      }
>
> What are the problems of my code and how can I write
> a better one. Please throw some light.

You don't need to initialize 'name' with a 'new String()' - just 
assign it with an empty string literal which is a constant:

         String name = "";

The 'name += ch' will assign it a new String instance, also.  In 
this regard you may better use a StringBuilder:

         StringBuilder name = new StringBuilder();
         Reader r = new InputStreamReader(System.in);
         int ch = r.read();
         while (ch != -1 && ch != '\n') {
             name.append((char) ch);
             ch = r.read();
         }
         System.out.println("Hello, " + name);

In the above snippet I also check whether the Reader is returning 
-1, which would mean 'System.in' has been closed for some reason - 
otherwise you risk going in infinite loop, in that case.

-- 
Stanimir

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 06:06 -0700
  Re: The greeting code in Java Aéris <aeris@imirhil.fr> - 2011-06-19 15:19 +0200
    Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 06:44 -0700
      Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 10:13 -0400
        Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 07:17 -0700
          Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 11:01 -0400
            Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 12:06 -0700
              Re: The greeting code in Java Aéris <aeris@imirhil.fr> - 2011-06-19 22:06 +0200
                Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 22:33 -0700
              Re: The greeting code in Java RedGrittyBrick <RedGrittyBrick@spamweary.invalid> - 2011-06-20 16:36 +0100
              Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-20 12:25 -0400
                Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-20 13:00 -0400
                Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-20 15:24 -0400
              Re: The greeting code in Java blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-20 19:23 +0000
          Re: The greeting code in Java Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-06-19 16:25 -0400
            Re: The greeting code in Java Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-06-19 17:22 -0400
        Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 12:08 -0400
        Re: The greeting code in Java "Nasser M. Abbasi" <nma@12000.org> - 2011-06-19 19:35 -0700
          Re: The greeting code in Java "Nasser M. Abbasi" <nma@12000.org> - 2011-06-19 21:41 -0700
        Re: The greeting code in Java Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-06-20 01:02 -0400
      Re: The greeting code in Java Aéris <aeris@imirhil.fr> - 2011-06-19 16:51 +0200
        Re: The greeting code in Java Stanimir Stamenkov <s7an10@netscape.net> - 2011-06-19 18:06 +0300
          Re: The greeting code in Java Aéris <aeris@imirhil.fr> - 2011-06-19 17:24 +0200
            Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 11:37 -0400
            Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 11:40 -0400
        Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 12:05 -0700
        Re: The greeting code in Java blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-20 19:21 +0000
  Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 10:31 -0400
    Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 11:36 -0700
      Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 15:03 -0400
        Re: The greeting code in Java blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-20 19:22 +0000
          Re: The greeting code in Java Tobias Blass <tobiasblass@gmx.net> - 2011-06-21 07:44 +0000
            Re: The greeting code in Java Tobias Blass <tobiasblass@gmx.net> - 2011-06-21 09:34 +0000
              Re: The greeting code in Java Gene Wirchenko <genew@ocis.net> - 2011-06-21 07:47 -0700
            Re: The greeting code in Java blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-21 20:43 +0000
              Re: The greeting code in Java Tobias Blass <tobiasblass@gmx.net> - 2011-06-22 08:35 +0000
                Re: The greeting code in Java blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2011-06-22 20:04 +0000
  Re: The greeting code in Java Stanimir Stamenkov <s7an10@netscape.net> - 2011-06-19 19:07 +0300
    Re: The greeting code in Java Saeed Amrollahi <amrollahi.saeed@gmail.com> - 2011-06-19 12:08 -0700
  Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 13:07 -0400
    Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 13:11 -0400
      Re: The greeting code in Java Jeff Higgins <jeff@invalid.invalid> - 2011-06-19 14:19 -0400

csiph-web