Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如果用户输入不是ArrayList中的唯一值,如何循环提示用户输入?

如果用户输入不是ArrayList中的唯一值,如何循环提示用户输入?
EN

Stack Overflow用户
提问于 2019-05-06 01:57:36
回答 3查看 53关注 0票数 0

我正在尝试让用户为一本书的ISBN输入唯一的值。我能够接收用户输入,它可以很好地填充ArrayList,但是如果用户输入的值已经在ArrayList中,我希望他们收到一条错误消息,并被提示重试。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 do{ 

    System.out.print("\n ISBN must be 4 numbers only.\nEnter isbn: ");
    isbn = sc.nextLine();

  try{
    isbnInt = Integer.valueOf(isbn);
    }//end try

    catch(NumberFormatException nfe){
     System.out.println("\nPlease enter integer numbers only.");
    }//end catch


 }while(isbn.trim().length() <4 && (isbn.trim().length()>0) ||  (isbn.trim().length() >4));
    sc = new Scanner(System.in);
    System.out.println();

 do{   
    System.out.print("Enter quantity: ");
    quantity = sc.nextLine();

     try{
    quantityInt = Integer.valueOf(quantity);
    }//end try

    catch(NumberFormatException nfe){
     System.out.println("\nPlease enter integer numbers from 1 through 1000 only.");
     }//end catch

  }while(quantity.trim().length() > 1000 ||(quantity.trim().length()<0) );
EN

回答 3

Stack Overflow用户

发布于 2019-05-06 02:14:56

创建验证ISBN的方法,如下所示

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public boolean verifyISBN(int ISBN)

在这里,您将使用for循环检查数组中是否存在ISBN

收到返回值后,将其存储在一个变量中,并在第一个do-while循环的while条件中使用。

票数 0
EN

Stack Overflow用户

发布于 2019-05-06 02:24:55

我认为您需要一种不同的数据结构,比如HashSet,因为它不允许重复。

调用add方法时:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
hashSet.add(quantityInt);

它验证HashSet是否已经包含该元素。

  • if it :它将不插入元素并返回false;
  • if,如果不包含:它将插入元素并返回false
  • if

您可以检查该方法是否返回了false,如果是,则显示一条错误消息并再次启用输入。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
...
final Set<Integer> set = new HashSet<>();
int quantityInt = scanner.nextInt();
while(!set.add(quantityInt)) {
   System.out.println("You can't insert duplicate elements.");
   quantityInt = scanner.nextInt();
}
...
票数 0
EN

Stack Overflow用户

发布于 2019-05-06 03:12:30

我觉得我就像在拨打电话。不幸的是,我需要使用ArrayList进行赋值。我有一个带有布尔运算符"contains“的while循环设置。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
while(contains != books.contains(isbnInt)){

但它不起作用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55997961

复制
相关文章
用户输入和while循环
函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便使用。
清菡
2020/12/02
2.6K0
用户输入和while循环
用户输入
大多数程序都在解决最终用户问题,为此通常需要从用户那里获取一些信息。在程序需要一个名字时,你需要提示用户输入该名字;程序需要一个名字时,你需要提示用户输入一系列名字。
狼啸风云
2019/01/18
9700
Python基础学习-用户输入和while循环
一:函数input()的工作原理: 函数input()让程序暂停运行,等待用户输入一些文本。 获取用户输入后,Python将其存储在一个变量中,以方便使用。 1:编写清晰的程序: # 函数input()让程序暂停运行, 等待用户输入一些文本, 并在用户按回车键后继续运行 message = input("Tell me something, and I will repeat it back to you: ") print(message) # 通过在提示末尾(这里是冒号后面)包含一个空格
爱吃西瓜的番茄酱
2018/04/03
1.7K0
UiTextField对输入的长度进行限制并提示用户还可输入的长度
最近想做用户昵称的限制,但是网上百度了很多方法效果都不是我自己想要的,终于找到种方法 如下: 1、声明两个属性  nickname是昵称的textfleld canEditSizeLAbel是提示用户剩余可添加的数 @property (weak, nonatomic) IBOutlet UITextField *nickName; @property(nonatomic,strong)UILabel *canEditSizeLabel;//可编辑数的label 2 给textfield添加一个点击事件,用
用户1219438
2018/02/01
2.1K0
Python之用户输入
大多数程序都旨在解决最终用户的问题,为此,需要从用户那里获取一些信息。函数input()让程序暂停运行,等待用户输入一些文本。
py3study
2020/01/06
1.2K0
Angular 2 用户输入
等号左边的 (click) 表示把该按钮的点击事件作为绑定目标 。 等号右边,引号中的文本是一个 模板语句
陈不成i
2021/07/26
1.7K0
python用户输入(三)
name = "Li QW" #定义变量 fname = name  #fname等于name变量产生的值 print("My name is " , name,fname) name = "study"
py3study
2020/01/13
1K0
Python学习-Chapter7 用户输入和while循环
Chapter7 用户输入和while循环 7.1 input()字符串输入 用户输入文本,把文本呈现给用户 message = input("请输入返回的文本:") print(message) 请输入返回的文本:12345 12345 7.1.1 编写清晰的程序 原理: 变量 = input(参数 :说明/指示) name = input("please enter your name:") print(f"Hello,{name}") please enter your name:Oliver H
OliverHan
2023/04/04
1K0
Python学习-Chapter7 用户输入和while循环
Chapter7 用户输入和while循环 7.1 input()字符串输入 用户输入文本,把文本呈现给用户 message = input("请输入返回的文本:") print(message) 请输入返回的文本:12345 12345 7.1.1 编写清晰的程序 原理: 变量 = input(参数 :说明/指示) name = input("please enter your name:") print(f"Hello,{name}") please enter your name:Oliver H
OliverHan
2023/02/27
1.1K0
shell处理用户输入总结
版权声明:本文为木偶人shaon原创文章,转载请注明原文地址,非常感谢。 https://blog.csdn.net/wh211212/article/details/81865144
shaonbean
2019/05/26
5000
用户输入括号是否匹配
public class brackets { /*算法*/ public static boolean isMatch(String str) { int i = 0; char e, x; SqStackClass<Character> st = new SqStackClass<Character>(); //建立一个顺序栈 while (i < str.length()) {
楠羽
2022/11/18
9990
python 接收用户的输入
None是一个特殊的常量。 None和False不同。 None不是0。 None不是空字符串。 None和任何其他的数据类型比较永远返回False。 None有自己的数据类型NoneType。 你可以将None复制给任何变量,但是你不能创建其他NoneType对象。
py3study
2020/01/09
2K0
python 接收用户的输入
解决Springboot集成ActivitiModel提示输入用户名密码的问题
activiti-modeler 依赖要排除掉spring-security 相关的依赖。 包括: spring-security-config spring-security-core spring-security-web spring-security-crypto
庞小明
2019/07/02
1.6K0
shell 脚本中关于用户输入参数的处理
bash shell 中有一些特殊变量, 被称为 位置参数(positional parameter).
IT工作者
2022/07/03
2.5K0
Flex笔记_验证用户输入
内置验证器 Flex提供了很多内置的验证器,它们都是Validator类的子类。 Flex以扩展Validator类的方式创建了内置验证器,以用于满足常用需求。 Validator组件的重要属性和函数: enabled:Boolean类型,决定是否启用验证功能 required:Boolean类型,是否必填 requiredFieldError:String类型,设置显示给用户的消息 source:Object,设置想要验证的对象(组件) property:String,
LeoXu
2018/08/15
2.9K0
用户输入input&int
企鹅号小编
2017/12/28
9610
用户输入input&int
四.Vue处理用户输入
四.Vue处理用户输入
Java架构师必看
2021/05/14
7700
四.Vue处理用户输入
点击加载更多

相似问题

如果输入值无效,如何提示用户重新输入输入值?

44

如果用户输入不满足条件,则再次提示用户输入(arraylist)

10

如果用户输入无效,如何再次提示?

10

Arraylist用户输入

30

如果多个输入的输入值为负值,则重新提示用户

112
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文