Java基础之集合

利用list集合编写的终极武器系统

用户操作

package Demo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;

public class crud {

	static List<Map<String, Object>> list  = new  ArrayList<Map<String,Object>>();
   
	public List<Map<String, Object>> add( String name, String password) {
		Map<String, Object> map  = new  HashMap<String, Object>();
		int  id ;
		if(list.size()==0){
			id=1;
		}
		else{
			id= new Random().nextInt(1000);
		}
		map.put("id", id);  
		map.put("name", name); 
		map.put("password", password); 
		list.add(map);
		return  list;
	}

	public int delete(String id) {
		for (int i = 0; i < list.size(); i++) {
		   Map<String, Object> map = list.get(i);	
		   if(id.equals(map.get("id").toString())){
			   list.remove(i);
			  return 0;
		   }
		}
		 return 1;
	}

	public List<Map<String, Object>> show() {
		return list;
	}

	public void update(String updateid, String str) {
	     Map<String, Object> new map = new HashMap<String, Object>();
	     newmap.put("id", updateid);
	   //用split('-')方法将字符串以"-"分割形成一个字符串数组,然后再通过索引[0]取出所得数组中的第1个元素的值
	     newmap.put("name", str.split("-")[0]);   
	     newmap.put("password", str.split("-")[1]); 
			
		  for (int i = 0; i < list.size(); i++) {
			Map<String, Object> map = list.get(i);
			if(updateid.equals(map.get("id").toString())){
				list.set(i, newmap);
			}
		}
		
	}

	public void em() {
		for (int i = 0; i < list.size(); i++) {
			list.remove(i);
			  
			}
		
	}
		
	 
	
	
}

登录操作

package Demo;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
public class Login {
	   static  int sum =0;
	   public static Scanner  sc   = new Scanner(System.in);
	   static int i =0;
	   static  crud crud = new crud();
	   static  weapon weapon = new weapon();
	public static void main(String[] args) {
		 int sum =0;
		System.out.println("----------欢迎使用终极武器系统------------");
		System.out.println("    ------1.登录---------2.注册------");
		
		int index = sc.nextInt();
		if(index==1){
			//登录
			while (true) {
				System.out.println("请输入您的用户名");
				String name = sc.next();
				System.out.println("请输入您的密码");
				String pwd = sc.next();
				if(name.equals("admin")&&pwd.equals("admin")){
					System.out.println("您好,将军!您已获取最高权限,系统有自爆程序,请小心使用!");
					loginAdmin();
					return;
				}
				List<Map<String, Object>> list = crud.show();
				if(list.size()==0){
					System.out.println("暂无用户");
					main(null);
					return;
				}
				for (int i = 0; i < list.size(); i++) {
					if(name.equals(list.get(i).get("name").toString())){
						if(pwd.equals(list.get(i).get("password").toString())){
							System.out.println("登录成功");
							loginOk();
						}
						else{
							  System.out.println("密码错误");	
							  sum++;
							}
					}
					else{
						 System.out.println("用户名错误");	
						 sum++;
					}
				}
				if(sum==3){
					System.out.println("您已累计三次错误。。。");
					main(null);
					return;
				}
			}
			
		}
		if(index==2){
			//注册   注册成功的信息存入到数组中
		    //  二维数组
			user_name();
		}
		}
	
	
	private static void loginOk() {
		System.out.println("--1.查看武器装备------2.选择武器-----3.发射-----4.回收武器-----0.退出");
//		500 枪支 10000
//		40  高射炮  500
//		5000   投掷武器  	
		String weaponindex = sc.next();
		if(weaponindex.equals("1")){
			List<Map<String, Object>> list = weapon.showRm();
			for (int i = 0; i < list.size(); i++) {
				System.out.println(list.get(i));
			}
			loginOk();
		}
		
		if(weaponindex.equals("2")){
			boolean t=true;
			while(t) {
			System.out.println("选择武器类型:");
			List<Map<String, Object>> list = weapon.showRm();
			for (int i = 0; i < list.size(); i++) {
				System.out.println(i+1 + ":");
				System.out.println(list.get(i));
			}
			
			
			String type = sc.next();
			if(type.equals("1")) {
				System.out.println("请选择枪支数量:");
				int amount = sc.nextInt();
				if(amount>(int)list.get(0).get("数量")) {
					boolean a=true;
					while(a) {
					System.out.println("没有那么多枪支可供选择,请重新输入!");
					amount = sc.nextInt();
					if(amount<=(int)list.get(0).get("数量")) {
						a=false;
					}
					}
				}
				
				System.out.println("请选择弹药数量:");
				int ammunition = sc.nextInt();
				if(ammunition>(int)list.get(0).get("弹药数")) {
					boolean a=true;
					while(a) {
					System.out.println("没有那么多弹药可供选择,请重新输入!");
					ammunition = sc.nextInt();
					if(ammunition<=(int)list.get(0).get("弹药数")) {
						a=false;
					}
					}
				}
				weapon.add(type,amount,ammunition);
			}
			else if(type.equals("2")) {
				System.out.println("请选择高射炮数量:");
				int amount = sc.nextInt();
				if(amount>(int)list.get(1).get("数量")) {
					boolean a=true;
					while(a) {
					System.out.println("没有那么多高射炮可供选择,请重新输入!");
					amount = sc.nextInt();
					if(amount<=(int)list.get(1).get("数量")) {
						a=false;
					}
					}
				}
				System.out.println("请选择导弹数量:");
				int ammunition = sc.nextInt();
				if(ammunition>(int)list.get(1).get("导弹数")) {
					boolean a=true;
					while(a) {
					System.out.println("没有那么多导弹可供选择,请重新输入!");
					ammunition = sc.nextInt();
					if(ammunition<=(int)list.get(1).get("导弹数")) {
						a=false;
					}
					}
				}
				weapon.add(type,amount,ammunition);
			}
			else if(type.equals("3")) {
				System.out.println("请选择投掷武器数量:");
				int amount = sc.nextInt();
				if(amount>(int)list.get(2).get("数量")) {
					boolean a=true;
					while(a) {
					System.out.println("没有那么多投掷武器可供选择,请重新输入!");
					amount = sc.nextInt();
					if(amount<=(int)list.get(2).get("数量")) {
						a=false;
					}
					}
				}
				int ammunition = 0;
				weapon.add(type,amount,ammunition);
			}
		    System.out.println("是否继续选择?[y/n]");
		    String yn = sc.next();
		    if(yn.equals("y")||yn.equals("Y")) {
		    	t=true;
		    }
		    else if(yn.equals("n")||yn.equals("N")) {
		    	t=false;
		    }
			}
			List<Map<String, Object>> listUser = weapon.showRm1();
			for (int i = 0; i < listUser.size(); i++) {
				System.out.println("选择的武器:");
				System.out.println(listUser.get(i));
			}
		    loginOk();
		}
		if(weaponindex.equals("3")){
			
			System.out.println("请选择使用武器:");
			List<Map<String, Object>> listUsers = weapon.showRm1();
			if(listUsers.size()==0) {
				System.out.println("没有武器,请选择武器作战!");
				loginOk();
			}
			for (int i = 0; i < listUsers.size(); i++) {
				System.out.println(i+1 + ":");
				System.out.println(listUsers.get(i));
			}
			int type1 = sc.nextInt();
			
				weapon.div(type1);
			
			loginOk();
		}
		if(weaponindex.equals("4")){
			List<Map<String, Object>> listUsers = weapon.showRm1();
			if(listUsers.size()==0) {
				System.out.println("没有武器可回收!");
				loginOk();
			}
			weapon.recycle();
			System.out.println("回收成功");
			loginOk();
		}
		if(weaponindex.equals("0")){
			
			main(null);
		}
	}


	private static void loginAdmin() {
		System.out.println("--1.查看------2.添加-----3.移除------4.更改----5自爆----返回上一层/P ");
	    String logindex = sc.next();
	    if(logindex.equals("1")){
	    	List<Map<String, Object>> list = crud.show();
	    	if(list.size()==0){
	    		System.out.println("暂无数据,请去添加");
	    		loginAdmin();
	    	}
	    	else{
	    		for (int i = 0; i < list.size(); i++) {
					System.out.println(list.get(i));
				}
	    		loginAdmin();
	    	}
	    	
	    }
	    if(logindex.equals("2")){
	    	System.out.println("请输入姓名");
	    	String name = sc.next();
	    	System.out.println("请输入密码");
	    	String password = sc.next();
	    	crud.add(name, password);
	    	System.out.println("添加成功");
	    	loginAdmin();
	    }
	    
	    if(logindex.equals("3")){
	    	List<Map<String, Object>> list = crud.show();
	    	for (int i = 0; i < list.size(); i++) {
	    		int a=i+1;
				System.out.println("编号:"+a+list.get(i));
			}
	    	if(list.size()==0) {
	    		System.out.println("暂无用户!");
	    		loginAdmin();
	    	}
	    	System.out.println("请输入移动信息的编号");
	    	String  id= sc.next();
	    	int deletesum =crud.delete(id);
	    	
	    	if(deletesum==0){
	    		System.out.println("删除成功");
	    		loginAdmin();
	    	}
	    	else{
	    		System.out.println("删除失败");
	    		loginAdmin();
	    	}
	    	
	    	
	    }
	    
	    if(logindex.equals("4")){
	    	int  sum=0;
	    	 
	    	List<Map<String, Object>> list = crud.show();
	    	for (int i = 0; i < list.size(); i++) {
	    		int b=i+1;
				System.out.println("编号:"+b+list.get(i));
			}
	    	if(list.size()==0) {
	    		System.out.println("暂无用户!");
	    		loginAdmin();
	    	}
	    	System.out.println("请选择您要修改的数据的编号");
	    	String updateid = sc.next();
	    	for (int i = 0; i < list.size(); i++) {
				if(updateid.equals(list.get(i).get("id").toString())){
					
					System.out.println(list.get(i));
					sum++;
				}
			}
	    	if(sum==1){
	    		System.out.println("请输入您要修改的数据内容 (姓名-密码)");
		    	String str = sc.next();
		    	crud.update(updateid,str);
		    	System.out.println("修改成功");
		    	loginAdmin();
	    	}else{
	    		System.out.println("您输入的编号有误,暂无这条数据");
	    		loginAdmin();
	    	}
	    	
	    	
	    }
	    if(logindex.equals("5")) {
    	System.out.println("自爆程序已启动,系统将于5秒后自爆,请尽快撤离(你应该跑不了了)!!!");
    	List<Map<String, Object>> list = crud.show();
    	crud.em();
    	int a=5;
    	while(true) {
	    	System.out.println(a--);
	    	try {
				Thread.sleep(1000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} 
	    	if(a==0) {
	    		System.out.println("boom,嘣。。。boom。。。!!!");
	    		main(null);
	    	}
	    }
	    }
	    if(logindex.equals("p")){
	    	main(null);
	    }
	    
	}


	private static  String user_password( String uname ) {
		System.out.println("请输入密码");
		String upwd = sc.next();
		if(upwd.length()>=4 && upwd.length()<=8 ){
		
			 crud.add(uname, upwd);
			
			System.out.println("注册成功");
			main(null);
		}
		else{
			System.out.println("请输入正确的4-8位长度密码");
			user_password(uname);
		}
		return null;
	}
	private static String user_name() {
		
		System.out.println("请输入用户名");
		String uname = sc.next();
		if(uname.length()>=4 && uname.length()<=8 ){
			user_password(uname);
		}
		else{
			System.out.println("请输入正确的4-8位用户名");
			user_name();
		}
		return null;
	}
}

武器操作

package Demo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.Scanner;

public class weapon {

	  static  int   gun = 500;
	  static  int   archibald = 40;
	  static  int   grenade = 5000;
	  static  int  ammunition1 = 10000;
	  static  int  ammunition2 = 500;
	  public static Scanner  sc   = new Scanner(System.in);
	  static List<Map<String, Object>>  list  = new ArrayList<Map<String,Object>>();
	  static List<Map<String, Object>>  listUser  = new ArrayList<Map<String,Object>>();
	static{
		
		Map<String, Object> map1   = new  HashMap<String, Object>();
		map1.put("数量", gun);
		map1.put("种类", "枪支");
		map1.put("弹药数", ammunition1);
		
		Map<String, Object> map2   = new  HashMap<String, Object>();
		map2.put("数量", archibald);
		map2.put("种类", "高射炮");
		map2.put("导弹数", ammunition2);
		
		Map<String, Object> map3   = new  HashMap<String, Object>();
		map3.put("数量", grenade);
		map3.put("种类", "投掷武器");
		
		
		list.add(map1);
		list.add(map2);
		list.add(map3);
	}
	
	
	public List<Map<String, Object>> showRm() {
		return list;
	}
public List<Map<String, Object>> showRm1() {
		
		return listUser;
	}

	public void add(String type, int amount, int ammunition) {
		
		if(type.equals("1")){
			int a =(int)list.get(0).get("数量")-amount;
			int b =(int)list.get(0).get("弹药数")-ammunition;
			Map<String, Object> map   = new  HashMap<String, Object>();
			map.put("数量", a);
			map.put("种类", "枪支");
			map.put("弹药数", b);
			list.set(0, map);
			
		}
		if(type.equals("2")){
			int a =(int)list.get(1).get("数量")-amount;
			int b =(int)list.get(1).get("导弹数")-ammunition;
			Map<String, Object> map   = new  HashMap<String, Object>();
			map.put("数量", a);
			map.put("种类", "高射炮");
			map.put("导弹数", b);
			list.set(1, map);
		}
	
		if(type.equals("3")){
			int a =(int)list.get(2).get("数量")-amount;
			Map<String, Object> map   = new  HashMap<String, Object>();
			map.put("数量", a);
			map.put("种类", "投掷武器");
			list.set(2, map);
		}
	
		Map<String, Object> map = new HashMap<String, Object>();
		if(type.equals("1")) {
		map.put("选择武器种类", "枪支");
		map.put("数量", amount);
		map.put("弹药数", ammunition);}
		else if(type.equals("2")) {
			map.put("选择武器种类", "高射炮");
			map.put("数量", amount);
			map.put("导弹数", ammunition);}
		else if(type.equals("3")) {
			map.put("选择武器种类", "投掷武器");
			map.put("数量", amount);
			}
		
		listUser.add(map);
	}
	public void div(int type1) {
		
			if("枪支".equals(listUser.get(type1-1).get("选择武器种类").toString())) {
				System.out.println("请选择使用枪支数量:");
				int n = sc.nextInt();
				if(n>(int)listUser.get(type1-1).get("数量")) {
					boolean a=true;
					while(a) {
					System.out.println("枪支不够,请重新输入!");
					n = sc.nextInt();
					if(n<=(int)listUser.get(type1-1).get("数量")) {
						a=false;
					}
					}
				}
				System.out.println("请选择使用弹药数量:");
				int d = sc.nextInt();
				if(d>(int)listUser.get(type1-1).get("弹药数")) {
					boolean a=true;
					while(a) {
					System.out.println("弹药不够,请重新输入!");
					d = sc.nextInt();
					if(d<=(int)listUser.get(type1-1).get("弹药数")) {
						a=false;
					}
					}
				}
				 Map<String, Object> newmap = new HashMap<String, Object>();
			     newmap.put("选择武器种类", "枪支");
			     newmap.put("数量",(int)listUser.get(type1-1).get("数量")-n); 
			     newmap.put("弹药数",(int)listUser.get(type1-1).get("弹药数")-d); 
			     listUser.set(type1-1, newmap);
				System.out.println("发射:");
				boolean t=true;
				int j=0;
				while(t) {
					System.out.print("哒");
					n--;
					int a=(int) (Math.random()*10);
					if(a==6) {
						j++;
					}
					
					try {
						Thread.sleep(100);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					if(n==0) {
						System.out.println("  发射完毕,共击中"+j+"个敌军!!!");
						t=false;
					}
				}
				
			}
			else if("高射炮".equals(listUser.get(type1-1).get("选择武器种类").toString())) {
				System.out.println("请选择使用高射炮数量:");
				int n = sc.nextInt();
				if(n>(int)listUser.get(type1-1).get("数量")) {
					boolean a=true;
					while(a) {
					System.out.println("高射炮不够,请重新输入!");
					n = sc.nextInt();
					if(n<=(int)listUser.get(type1-1).get("数量")) {
						a=false;
					}
					}
				}
				System.out.println("请选择使用导弹数量:");
				int d = sc.nextInt();
				if(d>(int)listUser.get(type1-1).get("导弹数")) {
					boolean a=true;
					while(a) {
					System.out.println("导弹不够,请重新输入!");
					d = sc.nextInt();
					if(d<=(int)listUser.get(type1-1).get("导弹数")) {
						a=false;
					}
					}
				}
				 Map<String, Object> newmap = new HashMap<String, Object>();
			     newmap.put("选择武器种类", "高射炮");
			     newmap.put("数量",(int)listUser.get(type1-1).get("数量")-n); 
			     newmap.put("导弹数",(int)listUser.get(type1-1).get("导弹数")-d); 
			     listUser.set(type1-1, newmap);
				System.out.println("发射:");
				boolean t=true;
				int j = 0;
				while(t) {
					System.out.print("轰");
					n--;
					int a=(int) (Math.random()*10);
					if(a==6) {
						j++;
					}
					try {
						Thread.sleep(100);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					if(n==0) {
						System.out.println("发射完毕,共击中"+j+"个敌军!!!");
						t=false;
					}
				}
				
			}
			else if("投掷武器".equals(listUser.get(type1-1).get("选择武器种类").toString())) {
				System.out.println("请选择使用投掷武器数量:");
				int n = sc.nextInt();
				if(n>(int)listUser.get(type1-1).get("数量")) {
					boolean a=true;
					while(a) {
					System.out.println("投掷武器不够,请重新输入!");
					n = sc.nextInt();
					if(n<=(int)listUser.get(type1-1).get("数量")) {
						a=false;
					}
					}
				}
				 Map<String, Object> newmap = new HashMap<String, Object>();
			     newmap.put("选择武器种类", "投掷武器");
			     newmap.put("数量",(int)listUser.get(type1-1).get("数量")-n); 
			  
			     listUser.set(type1-1, newmap);
				System.out.println("投掷:");
				boolean t=true;
				int j = 0;
				while(t) {
					System.out.print("boom ");
					n--;
					int a=(int) (Math.random()*10);
					if(a==6) {
						j++;
					}
					try {
						Thread.sleep(100);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					if(n==0) {
						System.out.println("投掷完毕,共击中"+j+"个敌军!!!");
						t=false;
					}
				}
				
			}
	}
	public void recycle() {
		
		for (int i = 0; i < listUser.size(); i++) {
			
			if("枪支".equals(listUser.get(i).get("选择武器种类").toString()))
			{
			Map<String, Object> newmap = new HashMap<String, Object>();
		     newmap.put("种类", "枪支");
		     newmap.put("数量",(int)listUser.get(i).get("数量")+(int)list.get(0).get("数量")); 
		     newmap.put("弹药数",(int)listUser.get(i).get("弹药数")+(int)list.get(0).get("弹药数")); 
		    
		     list.set(0, newmap);
			}
			else if("高射炮".equals(listUser.get(i).get("选择武器种类").toString()))
			{
				Map<String, Object> newmap = new HashMap<String, Object>();
		     newmap.put("种类", "高射炮");
		     newmap.put("数量",(int)listUser.get(i).get("数量")+(int)list.get(1).get("数量")); 
		     newmap.put("导弹数",(int)listUser.get(i).get("导弹数")+(int)list.get(1).get("导弹数")); 
		     
		  list.set(1, newmap);
			}
			else if("投掷武器".equals(listUser.get(i).get("选择武器种类").toString()))
			{
			
			Map<String, Object> newmap = new HashMap<String, Object>();
		     newmap.put("种类", "投掷武器");
		     newmap.put("数量",(int)listUser.get(i).get("数量")+(int)list.get(2).get("数量")); 
		     
		  list.set(2, newmap);
		  
			}
		}
		listUser.clear();
	}
	
	

}

集合总结

1、list集合

创建:List<泛型> list= new ArrayList<泛型>();
添加方法:add()
list list= new ArrayList();
list.add(“你好”);
更新方法:set(index, element)
String str = “你好,Java!”
list.set(0,str)
移除方法:remove(index);
list.add(“2”);
list.remove(0);
获取方法:get(index);
list.get(0);
进阶:List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();
添加:Map<String, Object> map1 = new HashMap<String, Object>();
map1.put(“数量”, gun);
map1.put(“种类”, “枪支”);
map1.put(“弹药数”, ammunition1);
list.add(map1);
list.get(0).get(“数量”);//list集合数组中的第一个的数量对应的值gun;

2、map集合

创建:Map<k,v> map = new HashMap<k,v>();
k表示键值,v为对应的值,可根据k值找到对相应的v值
如:

List<Map<String, Object>>  list  = new ArrayList<Map<String,Object>>();
Map<String, Object> map1   = new  HashMap<String, Object>();
		map1.put("数量", gun);
		map1.put("种类", "枪支");
		map1.put("弹药数", ammunition1);
		
Map<String, Object> map2   = new  HashMap<String, Object>();
		map2.put("数量", archibald);
		map2.put("种类", "高射炮");
		map2.put("导弹数", ammunition2);
		
Map<String, Object> map3   = new  HashMap<String, Object>();
		map3.put("数量", grenade);
		map3.put("种类", "投掷武器");
		
		
		list.add(map1);
		list.add(map2);
		list.add(map3);
		list.get(0).get("数量");//list集合数组中的第一个的数量对应的值gun;

添加方法:put();
Map<String,Object> map = new HashMap<String,Object>();
map.put();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
探索全栈前端技术的魅力:HTML+CSS+JS+JQ+Bootstrap网站源码深度解析 在这个数字化时代,构建一个既美观又功能强大的网站成为了许多开发者和企业追逐的目标。本份资源精心汇集了一套完整网站源码,融合了HTML的骨架搭建、CSS的视觉美化、JavaScript的交互逻辑、jQuery的高效操作以及Bootstrap的响应式设计,全方位揭秘了现代网页开发的精髓。 HTML,作为网页的基础,它构建了信息的框架;CSS则赋予网页生动的外观,让设计创意跃然屏上;JavaScript的加入,使网站拥有了灵动的交互体验;jQuery,作为JavaScript的强力辅助,简化了DOM操作与事件处理,让编码更为高效;而Bootstrap的融入,则确保了网站在不同设备上的完美呈现,响应式设计让访问无界限。 通过这份源码,你将: 学习如何高效组织HTML结构,提升页面加载速度与SEO友好度; 掌握CSS高级技巧,如Flexbox与Grid布局,打造适应各种屏幕的视觉盛宴; 理解JavaScript核心概念,动手实现动画、表单验证等动态效果; 利用jQuery插件快速增强用户体验,实现滑动效果、Ajax请求等; 深入Bootstrap框架,掌握移动优先的开发策略,响应式设计信手拈来。 无论是前端开发新手渴望系统学习,还是资深开发者寻求灵感与实用技巧,这份资源都是不可多得的宝藏。立即深入了解,开启你的全栈前端探索之旅,让每一个网页都成为技术与艺术的完美融合!
探索全栈前端技术的魅力:HTML+CSS+JS+JQ+Bootstrap网站源码深度解析 在这个数字化时代,构建一个既美观又功能强大的网站成为了许多开发者和企业追逐的目标。本份资源精心汇集了一套完整网站源码,融合了HTML的骨架搭建、CSS的视觉美化、JavaScript的交互逻辑、jQuery的高效操作以及Bootstrap的响应式设计,全方位揭秘了现代网页开发的精髓。 HTML,作为网页的基础,它构建了信息的框架;CSS则赋予网页生动的外观,让设计创意跃然屏上;JavaScript的加入,使网站拥有了灵动的交互体验;jQuery,作为JavaScript的强力辅助,简化了DOM操作与事件处理,让编码更为高效;而Bootstrap的融入,则确保了网站在不同设备上的完美呈现,响应式设计让访问无界限。 通过这份源码,你将: 学习如何高效组织HTML结构,提升页面加载速度与SEO友好度; 掌握CSS高级技巧,如Flexbox与Grid布局,打造适应各种屏幕的视觉盛宴; 理解JavaScript核心概念,动手实现动画、表单验证等动态效果; 利用jQuery插件快速增强用户体验,实现滑动效果、Ajax请求等; 深入Bootstrap框架,掌握移动优先的开发策略,响应式设计信手拈来。 无论是前端开发新手渴望系统学习,还是资深开发者寻求灵感与实用技巧,这份资源都是不可多得的宝藏。立即深入了解,开启你的全栈前端探索之旅,让每一个网页都成为技术与艺术的完美融合!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值