String Sorter Returing Exit Code 0 instead of the Strings











up vote
-1
down vote

favorite












I am trying to make a string sorter that takes user input and puts it into alphabetical order. My code looks like this:



public class StringSorter {

public static void main(String argv) throws IOException {
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
System.out.println("How many strings do you want to sort?");
int numStrings = Integer.parseInt(stdin.readLine());
System.out.println("Input Strings Here:");
String stringsToSort = new String[numStrings];
for (int i = 0; i < numStrings; i++) {
String s = stdin.readLine();
stringsToSort[i] = s;
}
int comparison = (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]));
if (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]) < 0) {
System.out.println("Alphabetical Order: " + Integer.toString(comparison));
}
}
}


How do I make it print the strings instead of "Exit Code 0"?
I forgot to add that I cannot use java.util.Arrays or java.util.Vector for this assignment










share|improve this question
























  • It works for me, how are you executing this code?
    – Mark
    Nov 10 at 19:10















up vote
-1
down vote

favorite












I am trying to make a string sorter that takes user input and puts it into alphabetical order. My code looks like this:



public class StringSorter {

public static void main(String argv) throws IOException {
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
System.out.println("How many strings do you want to sort?");
int numStrings = Integer.parseInt(stdin.readLine());
System.out.println("Input Strings Here:");
String stringsToSort = new String[numStrings];
for (int i = 0; i < numStrings; i++) {
String s = stdin.readLine();
stringsToSort[i] = s;
}
int comparison = (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]));
if (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]) < 0) {
System.out.println("Alphabetical Order: " + Integer.toString(comparison));
}
}
}


How do I make it print the strings instead of "Exit Code 0"?
I forgot to add that I cannot use java.util.Arrays or java.util.Vector for this assignment










share|improve this question
























  • It works for me, how are you executing this code?
    – Mark
    Nov 10 at 19:10













up vote
-1
down vote

favorite









up vote
-1
down vote

favorite











I am trying to make a string sorter that takes user input and puts it into alphabetical order. My code looks like this:



public class StringSorter {

public static void main(String argv) throws IOException {
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
System.out.println("How many strings do you want to sort?");
int numStrings = Integer.parseInt(stdin.readLine());
System.out.println("Input Strings Here:");
String stringsToSort = new String[numStrings];
for (int i = 0; i < numStrings; i++) {
String s = stdin.readLine();
stringsToSort[i] = s;
}
int comparison = (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]));
if (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]) < 0) {
System.out.println("Alphabetical Order: " + Integer.toString(comparison));
}
}
}


How do I make it print the strings instead of "Exit Code 0"?
I forgot to add that I cannot use java.util.Arrays or java.util.Vector for this assignment










share|improve this question















I am trying to make a string sorter that takes user input and puts it into alphabetical order. My code looks like this:



public class StringSorter {

public static void main(String argv) throws IOException {
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
System.out.println("How many strings do you want to sort?");
int numStrings = Integer.parseInt(stdin.readLine());
System.out.println("Input Strings Here:");
String stringsToSort = new String[numStrings];
for (int i = 0; i < numStrings; i++) {
String s = stdin.readLine();
stringsToSort[i] = s;
}
int comparison = (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]));
if (stringsToSort[0].compareToIgnoreCase(stringsToSort[1]) < 0) {
System.out.println("Alphabetical Order: " + Integer.toString(comparison));
}
}
}


How do I make it print the strings instead of "Exit Code 0"?
I forgot to add that I cannot use java.util.Arrays or java.util.Vector for this assignment







java string user-input






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 10 at 21:36

























asked Nov 10 at 19:01









Matt Cheifetz

11




11












  • It works for me, how are you executing this code?
    – Mark
    Nov 10 at 19:10


















  • It works for me, how are you executing this code?
    – Mark
    Nov 10 at 19:10
















It works for me, how are you executing this code?
– Mark
Nov 10 at 19:10




It works for me, how are you executing this code?
– Mark
Nov 10 at 19:10












3 Answers
3






active

oldest

votes

















up vote
0
down vote













Right now you are printing the result of a comparison and not the string and you're only sorting the two first strings.



You call Array.sort() first and then you print the array. Replace your comparison and print with



Arrays.sort(stringsToSort);

for (String string : stringsToSort) {
System.out.println(string);
}





share|improve this answer




























    up vote
    0
    down vote













    The code is going to print 1, if the first String is alphabetically smaller than the second String otherwise it will do nothing and return 0 exit code.
    If you intend to do is print the array, you should iterate using a for loop on the elements of the array and print the element.



    For sorting the array, you could use any of the sorting algos. Selection sort is the simplest to understand. Following is a link for sorting a String array.
    http://web.cs.iastate.edu/~smkautz/cs227f12/examples/week11/SelectionSortExamples.java






    share|improve this answer




























      up vote
      0
      down vote













      You can use a custom sorting like this for your one,



      public class A {

      public static void main(String args) throws IOException {
      BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
      System.out.println("How many strings do you want to sort?");
      int numStrings = Integer.parseInt(stdin.readLine());
      System.out.println("Input Strings Here:");
      String stringsToSort = new String[numStrings];
      for (int i = 0; i < numStrings; i++) {
      String s = stdin.readLine();
      stringsToSort[i] = s;
      }

      Arrays.sort(stringsToSort, new Comparator<String>() {
      @Override
      public int compare(String s1, String s2) {
      return s1.compareToIgnoreCase(s2);
      }
      });

      for (int i = 0; i < stringsToSort.length; i++) {
      System.out.println(stringsToSort[i]);
      }
      }

      }





      share|improve this answer





















        Your Answer






        StackExchange.ifUsing("editor", function () {
        StackExchange.using("externalEditor", function () {
        StackExchange.using("snippets", function () {
        StackExchange.snippets.init();
        });
        });
        }, "code-snippets");

        StackExchange.ready(function() {
        var channelOptions = {
        tags: "".split(" "),
        id: "1"
        };
        initTagRenderer("".split(" "), "".split(" "), channelOptions);

        StackExchange.using("externalEditor", function() {
        // Have to fire editor after snippets, if snippets enabled
        if (StackExchange.settings.snippets.snippetsEnabled) {
        StackExchange.using("snippets", function() {
        createEditor();
        });
        }
        else {
        createEditor();
        }
        });

        function createEditor() {
        StackExchange.prepareEditor({
        heartbeatType: 'answer',
        convertImagesToLinks: true,
        noModals: true,
        showLowRepImageUploadWarning: true,
        reputationToPostImages: 10,
        bindNavPrevention: true,
        postfix: "",
        imageUploader: {
        brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
        contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
        allowUrls: true
        },
        onDemand: true,
        discardSelector: ".discard-answer"
        ,immediatelyShowMarkdownHelp:true
        });


        }
        });














        draft saved

        draft discarded


















        StackExchange.ready(
        function () {
        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53242408%2fstring-sorter-returing-exit-code-0-instead-of-the-strings%23new-answer', 'question_page');
        }
        );

        Post as a guest















        Required, but never shown

























        3 Answers
        3






        active

        oldest

        votes








        3 Answers
        3






        active

        oldest

        votes









        active

        oldest

        votes






        active

        oldest

        votes








        up vote
        0
        down vote













        Right now you are printing the result of a comparison and not the string and you're only sorting the two first strings.



        You call Array.sort() first and then you print the array. Replace your comparison and print with



        Arrays.sort(stringsToSort);

        for (String string : stringsToSort) {
        System.out.println(string);
        }





        share|improve this answer

























          up vote
          0
          down vote













          Right now you are printing the result of a comparison and not the string and you're only sorting the two first strings.



          You call Array.sort() first and then you print the array. Replace your comparison and print with



          Arrays.sort(stringsToSort);

          for (String string : stringsToSort) {
          System.out.println(string);
          }





          share|improve this answer























            up vote
            0
            down vote










            up vote
            0
            down vote









            Right now you are printing the result of a comparison and not the string and you're only sorting the two first strings.



            You call Array.sort() first and then you print the array. Replace your comparison and print with



            Arrays.sort(stringsToSort);

            for (String string : stringsToSort) {
            System.out.println(string);
            }





            share|improve this answer












            Right now you are printing the result of a comparison and not the string and you're only sorting the two first strings.



            You call Array.sort() first and then you print the array. Replace your comparison and print with



            Arrays.sort(stringsToSort);

            for (String string : stringsToSort) {
            System.out.println(string);
            }






            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Nov 10 at 19:22









            Joakim Danielson

            5,7133521




            5,7133521
























                up vote
                0
                down vote













                The code is going to print 1, if the first String is alphabetically smaller than the second String otherwise it will do nothing and return 0 exit code.
                If you intend to do is print the array, you should iterate using a for loop on the elements of the array and print the element.



                For sorting the array, you could use any of the sorting algos. Selection sort is the simplest to understand. Following is a link for sorting a String array.
                http://web.cs.iastate.edu/~smkautz/cs227f12/examples/week11/SelectionSortExamples.java






                share|improve this answer

























                  up vote
                  0
                  down vote













                  The code is going to print 1, if the first String is alphabetically smaller than the second String otherwise it will do nothing and return 0 exit code.
                  If you intend to do is print the array, you should iterate using a for loop on the elements of the array and print the element.



                  For sorting the array, you could use any of the sorting algos. Selection sort is the simplest to understand. Following is a link for sorting a String array.
                  http://web.cs.iastate.edu/~smkautz/cs227f12/examples/week11/SelectionSortExamples.java






                  share|improve this answer























                    up vote
                    0
                    down vote










                    up vote
                    0
                    down vote









                    The code is going to print 1, if the first String is alphabetically smaller than the second String otherwise it will do nothing and return 0 exit code.
                    If you intend to do is print the array, you should iterate using a for loop on the elements of the array and print the element.



                    For sorting the array, you could use any of the sorting algos. Selection sort is the simplest to understand. Following is a link for sorting a String array.
                    http://web.cs.iastate.edu/~smkautz/cs227f12/examples/week11/SelectionSortExamples.java






                    share|improve this answer












                    The code is going to print 1, if the first String is alphabetically smaller than the second String otherwise it will do nothing and return 0 exit code.
                    If you intend to do is print the array, you should iterate using a for loop on the elements of the array and print the element.



                    For sorting the array, you could use any of the sorting algos. Selection sort is the simplest to understand. Following is a link for sorting a String array.
                    http://web.cs.iastate.edu/~smkautz/cs227f12/examples/week11/SelectionSortExamples.java







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Nov 10 at 19:29









                    Bay Max

                    1158




                    1158






















                        up vote
                        0
                        down vote













                        You can use a custom sorting like this for your one,



                        public class A {

                        public static void main(String args) throws IOException {
                        BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
                        System.out.println("How many strings do you want to sort?");
                        int numStrings = Integer.parseInt(stdin.readLine());
                        System.out.println("Input Strings Here:");
                        String stringsToSort = new String[numStrings];
                        for (int i = 0; i < numStrings; i++) {
                        String s = stdin.readLine();
                        stringsToSort[i] = s;
                        }

                        Arrays.sort(stringsToSort, new Comparator<String>() {
                        @Override
                        public int compare(String s1, String s2) {
                        return s1.compareToIgnoreCase(s2);
                        }
                        });

                        for (int i = 0; i < stringsToSort.length; i++) {
                        System.out.println(stringsToSort[i]);
                        }
                        }

                        }





                        share|improve this answer

























                          up vote
                          0
                          down vote













                          You can use a custom sorting like this for your one,



                          public class A {

                          public static void main(String args) throws IOException {
                          BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
                          System.out.println("How many strings do you want to sort?");
                          int numStrings = Integer.parseInt(stdin.readLine());
                          System.out.println("Input Strings Here:");
                          String stringsToSort = new String[numStrings];
                          for (int i = 0; i < numStrings; i++) {
                          String s = stdin.readLine();
                          stringsToSort[i] = s;
                          }

                          Arrays.sort(stringsToSort, new Comparator<String>() {
                          @Override
                          public int compare(String s1, String s2) {
                          return s1.compareToIgnoreCase(s2);
                          }
                          });

                          for (int i = 0; i < stringsToSort.length; i++) {
                          System.out.println(stringsToSort[i]);
                          }
                          }

                          }





                          share|improve this answer























                            up vote
                            0
                            down vote










                            up vote
                            0
                            down vote









                            You can use a custom sorting like this for your one,



                            public class A {

                            public static void main(String args) throws IOException {
                            BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
                            System.out.println("How many strings do you want to sort?");
                            int numStrings = Integer.parseInt(stdin.readLine());
                            System.out.println("Input Strings Here:");
                            String stringsToSort = new String[numStrings];
                            for (int i = 0; i < numStrings; i++) {
                            String s = stdin.readLine();
                            stringsToSort[i] = s;
                            }

                            Arrays.sort(stringsToSort, new Comparator<String>() {
                            @Override
                            public int compare(String s1, String s2) {
                            return s1.compareToIgnoreCase(s2);
                            }
                            });

                            for (int i = 0; i < stringsToSort.length; i++) {
                            System.out.println(stringsToSort[i]);
                            }
                            }

                            }





                            share|improve this answer












                            You can use a custom sorting like this for your one,



                            public class A {

                            public static void main(String args) throws IOException {
                            BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in), 1);
                            System.out.println("How many strings do you want to sort?");
                            int numStrings = Integer.parseInt(stdin.readLine());
                            System.out.println("Input Strings Here:");
                            String stringsToSort = new String[numStrings];
                            for (int i = 0; i < numStrings; i++) {
                            String s = stdin.readLine();
                            stringsToSort[i] = s;
                            }

                            Arrays.sort(stringsToSort, new Comparator<String>() {
                            @Override
                            public int compare(String s1, String s2) {
                            return s1.compareToIgnoreCase(s2);
                            }
                            });

                            for (int i = 0; i < stringsToSort.length; i++) {
                            System.out.println(stringsToSort[i]);
                            }
                            }

                            }






                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered Nov 10 at 19:35









                            Sand

                            6759




                            6759






























                                draft saved

                                draft discarded




















































                                Thanks for contributing an answer to Stack Overflow!


                                • Please be sure to answer the question. Provide details and share your research!

                                But avoid



                                • Asking for help, clarification, or responding to other answers.

                                • Making statements based on opinion; back them up with references or personal experience.


                                To learn more, see our tips on writing great answers.





                                Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                                Please pay close attention to the following guidance:


                                • Please be sure to answer the question. Provide details and share your research!

                                But avoid



                                • Asking for help, clarification, or responding to other answers.

                                • Making statements based on opinion; back them up with references or personal experience.


                                To learn more, see our tips on writing great answers.




                                draft saved


                                draft discarded














                                StackExchange.ready(
                                function () {
                                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53242408%2fstring-sorter-returing-exit-code-0-instead-of-the-strings%23new-answer', 'question_page');
                                }
                                );

                                Post as a guest















                                Required, but never shown





















































                                Required, but never shown














                                Required, but never shown












                                Required, but never shown







                                Required, but never shown

































                                Required, but never shown














                                Required, but never shown












                                Required, but never shown







                                Required, but never shown







                                Popular posts from this blog

                                Guess what letter conforming each word

                                Port of Spain

                                Run scheduled task as local user group (not BUILTIN)