在while循环外提及Scanner对象和在while循环内提及它之间有什么区别?

问题描述 投票:0回答:1

首先,我尝试在while循环之外提及它,这不是第二次要求字符串值。但是,当我在循环中提到它时,它第二次询问我String值。请问有人无法告诉我我不明白的区别吗?

 //Firstly I mentioned it here
-----> Scanner sc = new Scanner(System.in); <-----
while(true){
                System.out.println("Do you wish to add an element : [Yes/No]");
                //Secondly I tried to mention it here 
                -----> Scanner sc = new Scanner(System.in); <-----
                String str = sc.nextLine();
                System.out.println(str);

                if(str.equalsIgnoreCase("No"))
                    break;
                else {
                    System.out.println("Enter the data : ");
                int temp = sc.nextInt();

                Node n = new Node(temp);
                n.next = llist.head ;

                llist.head = n ;
                }
java while-loop linked-list java.util.scanner
1个回答
0
投票

在第二种情况下,您需要在循环的每个迭代中重新创建它。这肯定是一个坏习惯。

© www.soinside.com 2019 - 2024. All rights reserved.