在条目为0时获取用户输入 [英] get user input while the entry is 0
本文介绍了在条目为0时获取用户输入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,
我想制作一个用户可以输入数字的程序(任意数字-2,-3,-4,0,100; 1000)
直到他输入0.
我在while循环中有错误,扫描程序与int不兼容,我怎么能摆脱它?有些东西不见了,我也不知道是什么。帮助。 (如果我写了愚蠢的东西我很新)
我的代码到目前为止:
Hello,
I want to make a program where the user can enter numbers (any number-2,-3,-4,0,100;1000)
until he enters 0.
I have an error at the while loop,scanner is not compatible with int,how can i get rid of that? Something is missing and i dont know what.Help pls. (sry if i wrote stupid things im new )
my code so far:
public static void main(String[] args) {
// int[] list = new int[10];
int i;
System.out.println("Enter numbers :");
Scanner input = new Scanner(System.in);
for (i = 1; i < 100; i++) {
while (input != 0){ // problem here , incompatible Scanner and int
i = input.nextInt();
}
}
}
Ok. so i get what you said and ty for your help,but its not working with 0.only numbers more then 0.If i neter 0 i get
Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 525
(([-+]?(((((?i)[]|\p{javaDigit})++)|([\p{javaDigit}&&[^0]]((?i)[]|\p{javaDigit})?((?i)[]|\p{javaDigit})?(\,((?i)[]|\p{javaDigit})((?i)[]|\p{javaDigit})((?i)[]|\p{javaDigit}))+)))))|(((((?i)[]|\p{javaDigit})++)|([\p{javaDigit}&&[^0]]((?i)[]|\p{javaDigit})?((?i)[]|\p{javaDigit})?(\,((?i)[]|\p{javaDigit})((?i)[]|\p{javaDigit})((?i)[]|\p{javaDigit}))+)))|(\Q-\E((((?i)[]|\p{javaDigit})++)|([\p{javaDigit}&&[^0]]((?i)[]|\p{javaDigit})?((?i)[]|\p{javaDigit})?(\,((?i)[]|\p{javaDigit})((?i)[]|\p{javaDigit})((?i)[]|\p{javaDigit}))+)))
like this:
<pre lang="cs">public static void main(String[] args) {
int i;
System.out.println(&quot;Enter numbers :&quot;);
Scanner input = new Scanner(System.in);
for (i = 1; i &lt; 100; i++) {
while (input.hasNextInt(8)){ //need 0 here
i = input.nextInt();
//if(input.hasNextInt()){
}
}
}
}</pre></pre>
推荐答案
while (input.hasNextInt()) {
// ...
}
Maybe a look at Class Scanner[^] would give some useful examples of its usage.
import java.util.ArrayList;
import java.util.Scanner;
public class SuccesiuneDeNumerePanaLa0 {
public st atic void main(String [] args){
int sum = 0;
ArrayList< integer> ; negative_list = new ArrayList< integer>();
ArrayList< integer> pozitive_list = new ArrayList< integer>();
System.out.println(在列表中输入数字:);
扫描仪输入=新扫描仪(System.in);
while(input.hasNextInt()){
int i = input.nextInt();
if(i< 0){
negative_list.add(i);
}
如果(i == 0){
休息;
}
if(i> 0){
pozitive_list.add(i);
}
for(int j:pozitive_list){
sum + = j;
}
}
System.out.println(+ sum);
System.out.println(+ negative_list.size());
}
}
import java.util.ArrayList;
import java.util.Scanner;
public class SuccesiuneDeNumerePanaLa0 {
public static void main(String[] args) {
int sum = 0;
ArrayList<integer> negative_list = new ArrayList<integer>();
ArrayList<integer> pozitive_list = new ArrayList<integer>();
System.out.println("Enter number to the list: ");
Scanner input = new Scanner(System.in);
while (input.hasNextInt()) {
int i = input.nextInt();
if (i < 0) {
negative_list.add(i);
}
if (i == 0) {
break;
}
if (i > 0) {
pozitive_list.add(i);
}
for (int j : pozitive_list) {
sum += j;
}
}
System.out.println(" " + sum);
System.out.println(" " + negative_list.size());
}
}
这篇关于在条目为0时获取用户输入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文