Java基础练习题10--[使用ArrayList获取10个随机数;String类型的ArrayList集合,去除ArrayList中的重复元素,模拟注册,登录存入集合]
Posted 小智RE0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础练习题10--[使用ArrayList获取10个随机数;String类型的ArrayList集合,去除ArrayList中的重复元素,模拟注册,登录存入集合]相关的知识,希望对你有一定的参考价值。
目录
使用ArrayList获取10个1-20之间的随机数,要求不能重复
import java.util.ArrayList;
import java.util.Random;
public class ArrayListRandomNumber {
public static void main(String[] args) {
//创建数组;
ArrayList arrayList=new ArrayList();
//创建Random类;
Random random = new Random();
//定义次数标记;
int number=0;
//定义布尔值标记;
boolean flag=true;
while(flag){
//随机取出1-20之间的数字;
int r=random.nextInt(20)+1;
//如果有重复的数字,则重新取随机数;
if(!arrayList.contains(r)){
arrayList.add(r);
number++;
//当存入10个数的时候,就停止循环;
if(number==10){
flag=false;
}
}
}
//遍历获得集合;
for (int i = 0; i < arrayList.size(); i++) {
System.out.print(arrayList.get(i)+" ");
}
}
}
String类型的ArrayList集合,去除ArrayList中的重复元素
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListNotRepeat {
public static void main(String[] args) {
ArrayList arrayList=new ArrayList();
arrayList.add("q");
arrayList.add("q");
arrayList.add("q");
arrayList.add("q");
arrayList.add("q");
arrayList.add("w");
arrayList.add("w");
arrayList.add("w");
System.out.println(arrayList);
//定义字符串类型ArrayList集合;
ArrayList<String> stringArrayList=new ArrayList<>();
//遍历arraylist集合;将单独的元素存入集合stringArrayList;
Iterator iterator=arrayList.iterator();
while(iterator.hasNext()){
String s= (String) iterator.next();
if(!stringArrayList.contains(s)){
stringArrayList.add(s);
}
}
//遍历输出集合stringArrayList;
for (int i = 0; i < stringArrayList.size(); i++) {
System.out.print(stringArrayList.get(i)+" ");
}
}
}
模拟注册,登录 创建一个用户类(User)用户名(userName)密码(passWord)
选择注册操作时,提示输入用户名,密码,存入一个User对象,可以同时多个用户注册,使用集合存储注册的多个用户信息.||选择登录;提示输入用户名和密码进 与集合中已经存储的多个用户信息比较;;||成功提示 登录成功;||不成功提示用户名或密码错误.
import java.util.HashSet;
import java.util.Scanner;
public class LoginDemo {
public static void main(String[] args) {
oper();
}
//存储用户信息的集合;(HashSet不会存入重复信息);
static HashSet<User> hashSet=new HashSet<>();
//操作程序:
public static void oper(){
//这里写一个outer1标签来指定操作符,输入错误而就会跳转回来;
outer:
for (int i = 0; i <1000; i++) {
System.out.println("选择操作功能:1.注册,2.登录,3退出");
Scanner scanner=new Scanner(System.in);
int opr = scanner.nextInt();
while(true){
switch (opr){
//注册:
case 1:
zhuce_ZH();
continue outer;
//登录:
case 2:
denglu_ZH();
break;
//退出系统:
case 3:
System.out.println("退出系统.");
return;
//默认操作:
default:
System.out.println("操作符错误,重新输入.");
continue outer;
}
}
}
}
//注册;
public static void zhuce_ZH(){
Scanner scanner=new Scanner(System.in);
System.out.println("注册输入用户名:");
String userName=scanner.next();
System.out.println("注册输入密码:");
String password=scanner.next();
//存储用户信息;
User user=new User(userName,password);
hashSet.add(user);
}
//登录:
public static void denglu_ZH(){
Scanner scanner=new Scanner(System.in);
System.out.println("登录输入用户名:");
String userName=scanner.next();
System.out.println("登录输入密码:");
String password=scanner.next();
//判断是否存在;;
for(User user:hashSet){
if((user.getUserName().equals(userName))&(user.getPassword().equals(password))){
System.out.println("登录成功!");
}else {
System.out.println("账号密码错误");
}
}
}
}
用户信息类:
//用户信息类;
public class User {
//私有属性的userName和password;
private String userName ;
private String password;
//重写toString方法
@Override
public String toString() {
return "User{"+"用户名userName="+userName+"密码password="+password+'}';
}
//构造方法;
//无参构造方法;
public User() {
}
//有参数构造方法;
public User(String userName, String password) {
this.userName = userName;
this.password = password;
}
//get,set获取设置私有属性的方法
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
以上是关于Java基础练习题10--[使用ArrayList获取10个随机数;String类型的ArrayList集合,去除ArrayList中的重复元素,模拟注册,登录存入集合]的主要内容,如果未能解决你的问题,请参考以下文章