Java 集合操作

本文目錄一覽:

用java怎麼實現QQ登錄界面?

用java做QQ登錄界面的寫法如下:

package ch10;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

1、//定義該類繼承自JFrame,實現ActionListener接口

public class LoginTest extends JFrame implements ActionListener

{

2、//創建JPanel對象

private JPanel jp=new JPanel();

3、//創建3個標並加入數組

JLabel name = new JLabel("請輸入用戶名");

JLabel password = new JLabel("請輸入密碼");

JLabel show = new JLabel("");

private JLabel[] jl={name,password,show};

4、//創建登陸和重置按扭並加入數組

JButton login = new JButton("登陸");

JButton reset = new JButton("重置");

private JButton[] jb={login,reset};

5、//創建文本框以及密碼框

private JTextField jName=new JTextField();

private JPasswordField jPassword =new JPasswordField();

public LoginTest()

{

6、//設置布局管理器為空布局,這裡自己擺放按鈕、標籤和文本框

jp.setLayout(null);

for(int i=0;i2;i++)

{

7、//設置標籤和按扭的位置與大小

jl[i].setBounds(30,20+40*i,180,20);

jb[i].setBounds(30+110*i,100,80,20);

8、//添加標籤和按扭到JPanel容器中

jp.add(jl[i]);

jp.add(jb[i]);

//為2個按鈕註冊動作事件監聽器

jb[i].addActionListener(this);

}

9、//設置文本框的位置和大小,注意滿足美觀並足夠用戶名的長度

jName.setBounds(130,15,100,20);

10、//添加文本框到JPanel容器中

jp.add(jName);

11、//為文本框註冊動作事件監聽器

jName.addActionListener(this);

12、//設置密碼框的位置和大小,注意滿足美觀和足夠密碼的長度

jPassword.setBounds(130,60,100,20);

13、//添加密碼框到JPanel容器中

jp.add(jPassword);

14、//設置密碼框中的回顯字符,這裡設置美元符號

jPassword.setEchoChar('$');

15、//為密碼框註冊動作事件監聽器

jPassword.addActionListener(this);

16、//設置用於顯示登陸狀態的標籤大小位置,並將其添加進JPanel容器

jl[2].setBounds(10,180,270,20);

jp.add(jl[2]);

17、//添加JPanel容器到窗體中

this.add(jp);

18、//設置窗體的標題、位置、大小、可見性及關閉動作

this.setTitle("登陸窗口");

this.setBounds(200,200,270,250);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

19、//實現動作監聽器接口中的方法actionPerformed

public void actionPerformed(ActionEvent e)

{

20、//如果事件源為文本框

if(e.getSource()==jName)

{

21、//切換輸入焦點到密碼框

jPassword.requestFocus();

}

22、//如果事件源為重置按扭

else if(e.getSource()==jb[1])

{

23、//清空姓名文本框、密碼框和show標籤中的所有信息

jl[2].setText("");

jName.setText("");

jPassword.setText("");

24、//讓輸入焦點回到文本框

jName.requestFocus();

}

25、//如果事件源為登陸按鈕,則判斷登錄名和密碼是否正確

else

{

26、//判斷用戶名和密碼是否匹配

if(jName.getText().equals("lixiangguo")

String.valueOf(jPassword.getPassword()).equals("19801001"))

{

27、jl[2].setText("登陸成功,歡迎您的到來!");

}

else

{

28、jl[2].setText("對不起,您的用戶名或密碼錯誤!");

}

}

}

public static void main(String[] args)

{

29、//創建LoginTest窗體對象

new LoginTest();

}

}

java集合實現賬號

這是要?代碼?

定義一個bean類為賬戶類,然後把註冊的賬戶和密碼封裝到該類然後放入List

此為註冊然後是當登錄的時候把該集合拿出來與登錄的賬戶密碼進行比對

//baen類

packagelogo;

publicclassUserBean{

privateStringusername;

privateStringpassword;

publicStringgetUsername(){

returnusername;

}

publicvoidsetUsername(Stringusername){

this.username=username;

}

publicStringgetPassword(){

returnpassword;

}

publicvoidsetPassword(Stringpassword){

this.password=password;

}

}

//實現類

packagelogo;

importjava.util.ArrayList;

importjava.util.List;

publicclassListuser{

privateListUserBeanlist=newArrayList();

//註冊用戶

publicStringadduser(UserBeanub){

if(!"".equals(ub)null!=ub){

list.add(ub);

return"註冊成功";

}else{

return"註冊失敗";

}

}

//登錄

publicStringlogin(Stringusername,Stringpassword){

if(list!=null!"".equals(list)){

for(inti=0;ilist.size();i++){

UserBeanub=list.get(i);

if(ub.getUsername().equals(username)ub.getPassword().equals(password))

{

return"登錄成功";

} else{

return"用戶名或密碼錯誤";

}

}

return"用戶名不存在";

}else{

return"用戶名不存在";

}

}

//封裝UserBean

publicUserBeanaddUserBean(Stringusername,Stringpassword){

UserBeanub=newUserBean();

if(!"".equals(username)!"".equals(password)){

ub.setUsername(username);

ub.setPassword(password);

returnub;

}else{

returnnull;

}

}

}

//測試

packagelogo;

importjava.util.Scanner;

publicclassTest{

publicstaticvoidmain(String[]args){

Listuserlis=newListuser();

Scannersc=newScanner(System.in);

while(true){

System.out.println("1:註冊—-2:登錄—3:退出");

Stringflag=sc.nextLine();

if("1".equals(flag)){

System.out.println("請輸入用戶名");

Stringusername=sc.nextLine();

System.out.println("請輸入密碼");

Stringpassword=sc.nextLine();

//封裝用戶

UserBeanub=lis.addUserBean(username,password);

//註冊用戶

Stringsr=lis.adduser(ub);

System.out.println(sr);

}

if("2".equals(flag)){

//登錄

System.out.println("請輸入用戶名");

Stringusername=sc.nextLine();

System.out.println("請輸入密碼");

Stringpassword=sc.nextLine();

Stringsr=lis.login(username,password);

System.out.println(sr);

}

if("3".equals(flag)){

break;

}

}

}

}

//結果

java用純集合寫登錄

importjava.util.HashMap;

importjava.util.Scanner;

publicclassLoginDemo{

publicstaticvoidmain(Stringargs[]){

//初始化數據

HashMapString,Stringmap=newHashMapString,String();

map.put("tom","123001");

map.put("jerry","xxxyyy");

map.put("admin","001");

System.out.println("請輸入用戶名:");

Scannersc=newScanner(System.in);

StringuserId=sc.nextLine();

System.out.println("請輸入密碼:");

Stringpassword=sc.nextLine();

//用戶名不為空並且集合中包含該用戶名並且該用戶名對應的密碼和輸入的密碼一致

if(userId!=nullmap.containsKey(userId)map.get(userId).equals(password)){

System.out.println("登錄成功");

}else{

System.out.println("登錄失敗");

}

sc.close();

}

}

輸出

請輸入用戶名:

tom

請輸入密碼:

123010

登錄失敗

請輸入用戶名:

admin

請輸入密碼:

001

登錄成功

java我是初學者,登錄,註冊兩個類,用集合的泛型存註冊的數據(姓名,密碼),登錄的時候怎麼做啊?

你這要做的是一個模擬登錄,註冊,那麼首先需要1個靜態的容器,也就是存數據的地方,

建議單獨建一個類,Data

裡邊一個靜態變量

public static HashMapString,User users = new HashMapString,User();//Key為用戶的名稱,不能重複,User為用戶對象,裡邊可以添加你需要模擬的屬性

思路:

註冊的時候,首先根據用戶輸入的用戶名在users里去找有沒有重複的Key,users.containsKey()這個方法可以做到,如果有則不能用此用戶名註冊,否則可以繼續填寫資料,填寫按成後,實例化一個User,將這個User的 userName作為key ,User作為value插入users這個map中,

登錄的時候也是根據用戶名去users中去找key,然後在匹配密碼

java通過集合註冊登陸系統.求解

importjava.util.ArrayList;

importjava.util.List;

importjava.util.Scanner;

publicclassStudentManage{

ListUseruserList=newArrayList();

staticScannersc=newScanner(System.in);

publicstaticvoidmain(String[]args){

StudentManagesmManage=newStudentManage();

while(true){

System.out.println("——–請選擇操作——–\n\t1.用戶登錄\n\t2.用戶註冊\n\t3.退出");

System.out.println("————————-");

System.out.println("輸入:");

StringopString=sc.next();

switch(opString){

case"1":

smManage.login();

break;

case"2":

smManage.regist();

break;

case"3":

System.exit(0);

break;

default:

System.out.println("輸入錯誤");

break;

}

}

}

//userlogin

publicvoidlogin(){

System.out.println("——–用戶登錄——–");

System.out.println("請輸入用戶名:");

Stringusername=sc.next();

System.out.println("請輸入密碼:");

Stringpassword=sc.next();

if(userList.contains(newUser(username,password))){

System.out.println("登錄成功");

}else{

System.out.println("用戶名或密碼錯誤!");

}

}

//userregist

publicvoidregist(){

System.out.println("——–用戶註冊——–");

booleanflag=true;

Stringusername="";

while(flag){

System.out.println("請輸入用戶名:");

username=sc.next();

if(userList.size()0){

for(Useruser:userList){

if(user.getUsername().equals(username)){

flag=true;

System.out.println("Tips:用戶名已存在,請重新輸入!");

break;

}else{

flag=false;

}

}

}

else{

flag=false;

}

}

System.out.println("請輸入密碼:");

Stringpassword=sc.next();

userList.add(newUser(username,password));

}

}

classUser{

privateStringusername;

privateStringpassword;

publicUser(Stringusername,Stringpassword){

super();

this.username=username;

this.password=password;

}

publicStringgetUsername(){

returnusername;

}

publicvoidsetUsername(Stringusername){

this.username=username;

}

publicStringgetPassword(){

returnpassword;

}

publicvoidsetPassword(Stringpassword){

this.password=password;

}

@Override

publicinthashCode(){

finalintprime=31;

intresult=1;

result=prime*result+((password==null)?0:password.hashCode());

result=prime*result+((username==null)?0:username.hashCode());

returnresult;

}

@Override

publicbooleanequals(Objectobj){

if(this==obj)

returntrue;

if(obj==null)

returnfalse;

if(getClass()!=obj.getClass())

returnfalse;

Userother=(User)obj;

if(password==null){

if(other.password!=null)

returnfalse;

}elseif(!password.equals(other.password))

returnfalse;

if(username==null){

if(other.username!=null)

returnfalse;

}elseif(!username.equals(other.username))

returnfalse;

returntrue;

}

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/157731.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-18 20:02
下一篇 2024-11-18 20:02

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python棧操作用法介紹

    如果你是一位Python開發工程師,那麼你必須掌握Python中的棧操作。在Python中,棧是一個容器,提供後進先出(LIFO)的原則。這篇文章將通過多個方面詳細地闡述Pytho…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29

發表回復

登錄後才能評論