第14章,lambda表达式与流处理例题

news2024/11/24 22:38:57
package 例题;

import java.util.List;
import java.util.stream.Collectors;
import java.util. stream.Stream;
	public class 例题19 {		
		public static void main(String[] args){
			List<例题14> list = 例题14.get例题14List();//获取公共类的测试数据
			Stream<例题14> stream = list.stream();//获取集合流对象
			stream = stream.filter(people ->"女".equals(people.getSex()));//将所有女员工过滤出来
			stream = stream.limit(2);//取出前两位
			List<例题14> result = stream.collect(Collectors.toList());//将流对象重新封装成一个List集合
			for (例题14 emp : result) {//遍历结果集
				System.out.println(emp);//输出员工对象信息
			}
		}
	}
				

 

package 例题;
interface SayHi{	//创建打招呼接口
	String say();	//打招呼方法
}

public class 例题1 {

	public static void main(String[] args) {
		//lambda表达式实现打招呼接口,返回抽象方法结果
		SayHi hi = ()->"你好啊!这是lambda表达式";
		System.out.println(hi.say());

	}

}

 

package 例题;
interface cf{//构造方法接口
	例题10 action();//调用无参构造方法
}
public class 例题10 {//测试类
	
	public 例题10() {//无参构造方法
		System.out.println("调用无参构造方法");
	}
	public 例题10(int i) {//有参构造方法
		System.out.println("调用有参构造方法");
	}
	public static void main(String[] args) {
		cf a = 例题10::new;//引用测试类的构造方法
		例题10 b = a.action();//通过无参方法创建对象

	}

}

 

package 例题;
interface cf2{//构造方法接口
	例题11 action(int i);//调用无参构造方法
}
public class 例题11 {//测试类
	
	public 例题11() {//无参构造方法
		System.out.println("调用无参构造方法");
	}
	public 例题11(int i) {//有参构造方法
		System.out.println("调用有参构造方法,参数为:" + i);
	}
	public static void main(String[] args) {
		cf2 a = 例题11::new;//引用测试类的构造方法
		例题11 b = a.action(123);//通过无参方法创建对象

	}

}

 

package 例题;
interface ac<T>{//构造方法接口
	T action(int n);//抽象方法返回对象数组,方法参数决定数组个数
}
public class 例题12 {

	public static void main(String[] args) {
		ac<例题12[]> a = 例题12[]::new;//引用数组的构造方法
		例题12 arr[] = a.action(3);//接口创建数组,并指定数组个数
		arr[0] = new 例题12();//给数组元素实例化
		arr[1] = new 例题12();
		arr[2] = new 例题12();
		arr[3] = new 例题12();//如果调用或者给arr[3]赋值,代码则会抛出数组下标越界异常
	}

}

 

package 例题;

import java.util.function.Function;

public class 例题13 {
	//创建Function接口对象,参数类型是Integer[],返回值是String
	Function<Integer[], String> f = (n)->{
		StringBuilder str = new StringBuilder();//创建字符序列
		for(Integer num : n) {//遍历参数数组
			str.append(num);//字符序列添加数组元素
			str.append('.');//字符序列添加字符'.'
		}
		str.deleteCharAt(str.length()-1);//删除末尾的'.'
		return str.toString();//返回字符串
	};
	
	

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Integer[] ip = {192, 168, 1, 1};//带处理的数组
		例题13 d = new 例题13();
		System.out.println(d.f.apply(ip));//输出处理结果
	}

}

 

package 例题;

import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
 
public class 例题28{
 
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		List<例题14> list = 例题14.get例题14List();
		Stream<例题14>stream=list.stream();
		Map<String,List <例题14>> map = stream.collect(Collectors.groupingBy(例题14::getDept));
		Set<String>depts=map.keySet();
		for(String dept:depts) {
			System.out.println(dept+"员工信息如下:");
			List<例题14>temp=map.get(dept);
			for(例题14 e:temp) {
				System.out.println(e);
			}
			System.out.println();
		}
	}
 
}

 

package 例题;


import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class 例题29 {
	public static void main(String[] args) {
		List<例题14> list = 例题14.get例题14List(); // 获取公共类的测试数据
		Stream<例题14> stream = list.stream(); // 获取集合流对象
		// 一级分组规则方法,按照员工部门进行分级
		Function<例题14, String> deptFunc = 例题14::getDept;
		// 二级分组规则方法,按照员工部门进行分级
		Function<例题14, String> sexFunc = 例题14::getSex;
		// 将流中的数据进行二级分组,先对员工部分进行分组,在对员工性别进行分组
		Map<String, Map<String, List<例题14>>> map = stream
				.collect(Collectors.groupingBy(deptFunc, Collectors.groupingBy(sexFunc)));
		// 获取Map的中的一级分组键集合,也就是部门名称集合
		Set<String> deptSet = map.keySet();
		for (String deptName : deptSet) { // 遍历部门名称集合
			// 输出部门名称
			System.out.println("【" + deptName + "】 部门的员工列表如下:");
			// 获取部门对应的二级分组的Map对象
			Map<String, List<例题14>> sexMap = map.get(deptName);
			// 获得二级分组的键集合,也就是性别集合
			Set<String> sexSet = sexMap.keySet();
			for (String sexName : sexSet) { // 遍历部门性别集合
				// 获取性别对应的员工集合
				List<例题14> emplist = sexMap.get(sexName);
				System.out.println("    【" + sexName + "】 员工:"); // 输出性别种类
				for (例题14 emp : emplist) {// 遍历员工集合
					System.out.println("        " + emp); // 输出对应员工信息
				}
			}
		}
	}
}

package 例题;

import java.util.List;
import java.util.Optional;
import java.util.stream.Stream;
public class 例题26 {
    public static void main(String[] args) {
        // 获取公共类的测试数据
        List<例题14> list = 例题14.get例题14List();
        Stream<例题14> stream = list.stream();             // 获取集合流对象
        // 过滤出21岁的员工
        stream = stream.filter(people -> people.getAge() == 21);
        Optional<例题14> young = stream.findFirst();      // 获取第一个元素
        例题14 emp = young.get();                           // 获取员工对象
        System.out.println(emp);                              // 输出结果
    }
}

 

package 例题;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class 例题16 {
	//输出集合元素
	static void ph(String mes, List list) {
		System.out.println(mes);//输出文字信息
		list.stream().forEach(n->{//使用forEach方法遍历集合并打印元素
			System.out.println(n + "");
		});
		System.out.println();
	}
	
	public static void main(String[] args) {
		// 创建空数组
		List<Integer> list = new ArrayList<>();
		for(int i = 1; i <= 10; i++) {//从1循环到10
			list.add(i);//从集合赋值
		}
		ph("集合原有元素:" ,list);//输出集合元素
		Stream<Integer> stream = list.stream();//获取集合流对象
		//将集合中的所有奇数过滤出来,把过滤结果重新赋值给流对象
		stream = stream.filter(n -> n % 2 == 1);
		//将流对象重新封装成一个List集合
		List<Integer> re = stream.collect(Collectors.toList());
		ph("过滤之后的集合元素:" , re);//输出集合元素
	}

}

 

package 例题;

import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class 例题17 {

	public static void main(String[] args) {
		List<例题14> list = 例题14.get例题14List();//获取公共类的测试数据
		Stream<例题14> stream = list.stream();//获取集合流对象
		stream = stream.filter(people->people.getAge()>30);//将年龄大于30岁的员工过滤出来
		List<例题14> rt = stream.collect(Collectors.toList());//将流对象重新封装成一个List集合
		for(例题14 emp : rt) {//遍历结果集
			System.out.println(emp);//输出员工对象信息
		}
	}

}

 

package 例题;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class 例题18 {

	static void ph(String me, List list) {
		System.out.println(me);
		list.stream().forEach(n->{
			System.out.print(n+"");
		});
		System.out.println();
	}
	
	
	public static void main(String[] args) {
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(2);
		list.add(2);
		list.add(3);
		list.add(3);
		ph("去重前:",list);
		Stream<Integer> stream = list.stream();
		stream = stream.distinct();
		List<Integer> rt = stream.collect(Collectors.toList());
		ph("去重后:" ,rt);
	}

}

 

package 例题;
interface Addition{//加法接口
	int add(int a,int b);//加法抽象方法
}
public class 例题2 {

	public static void main(String[] args) {
		//lambda表达式实现加法接口,返回参数相加结果
		Addition ad = (x,y)->x+y;
		int result = ad.add(15, 16);
		System.out.println("相加结果; " + result);
	}

}

 

package 例题;

import java.util.List;
import java.util.stream.Collectors;
import java.util. stream.Stream;
public class 例题20 {   
 
	public static void main(String[] args) {
		// TODO Auto-generated method stub
			List<例题14> list = 例题14.get例题14List();//获取公共类的测试数据
			Stream<例题14> stream = list.stream();//获取集合流对象
			stream = stream.filter(people ->"男".equals(people.getSex()));//将所有男员工过滤出来
			stream = stream.skip(2);//跳过前两位
			List<例题14> result = stream.collect(Collectors.toList());//将流对象重新封装成一个List集合
			for (例题14 emp : result) {//遍历结果集
				System.out.println(emp);//输出员工对象信息
			}
		}
	}
						

 

package 例题;

import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
 
public class 例题21 {
    public static void main(String[] args) {
        List<例题14> list = 例题14.get例题14List();          // 获取公共类的测试数据
        Stream<例题14> stream = list.stream();              // 获取集合流对象
        // 将所有开发部的员工过滤出来
        stream = stream.filter(people -> "开发部".equals(people.getDept()));
        // 将所有员工的名字映射成一个新的流对象
        Stream<String> names = stream.map(例题14::getName);
        // 将流对象重新封装成一个List集合
        List<String> result = names.collect(Collectors.toList());
        for (String emp : result) {                              // 遍历结果集
            System.out.println(emp);                             // 输出所有姓名
        }
    }
}

 

package 例题;

import java.util.List;
import java.util.stream.DoubleStream;
import java.util.stream.Stream;
public class 例题22 {
    public static void main(String[] args) {
       List<例题14> list = 例题14.get例题14List();      // 获取公共类的测试数据
       Stream<例题14> stream = list.stream();          // 获取集合流对象
       // 将所有开发部的员工过滤出来
       stream = stream.filter(people -> "销售部".equals(people.getDept()));
       // 将所有员工的名字映射成一个新的流对象
       DoubleStream salarys = stream.mapToDouble(例题14::getSalary);
       // 统计流中元素的数学总和
       double sum = salarys.sum();
       System.out.println("销售部一个月的薪资总额:"+sum);
    }
}

 

package 例题;

import java.util.List;
import java.util.stream.Stream;
 
public class 例题23 {
    public static void main(String[] args) {
        List<例题14> list = 例题14.get例题14List();       // 获取公共类的测试数据
        Stream<例题14> stream = list.stream();           // 获取集合流对象
        // 判断所有员工的年龄是否都大于25
        boolean result = stream.allMatch(people -> people.getAge() > 25);
        System.out.println("所有员工是否都大于25岁:" + result);  // 输出结果
    }
}

 

package 例题;


import java.util.List;
import java.util.stream.Stream;
public class 例题24 {
   public static void main(String[] args) {
       List<例题14> list = 例题14.get例题14List();     // 获取公共类的测试数据
       Stream<例题14> stream = list.stream();         // 获取集合流对象
       // 判断员工是否有的年龄大于等于40
       boolean result = stream.anyMatch(people -> people.getAge() >= 40);
       System.out.println("员工中有年龄在40或以上的吗?:" + result); // 输出结果

   }
}

 

package 例题;

import java.util.List;
import java.util.stream.Stream;
public class 例题25 {
    public static void main(String[] args) {
        List<例题14> list = 例题14.get例题14List();        // 获取公共类的测试数据
        Stream<例题14> stream = list.stream();            // 获取集合流对象
        // 判断公司中是否不存在薪资小于2000的员工?
        boolean result = stream.noneMatch(people -> people.getSalary() <2000 );
        System.out.println("公司中是否不存在薪资小于2000元的员工?:" + result);// 输出结果
    }
}

 

package 例题;

interface CG3{
	String ck(int a);
}

public class 例题3 {

	public static void main(String[] args) {
		// lambda表达式
		//a为参数
		CG3 c = (a) -> {
			//判断语句
			if(a >= 90 && a <= 100) {
				return "成绩为优";
			}
			if(a >= 80 && a <= 90) {
				return "成绩为良";
			}
			if(a >= 60 && a <= 80) {
				return "成绩为中";
			}
			if(a >= 0 && a <= 60) {
				return "成绩为差";
			}
			return "成绩无效";
		};
		//调用ck方法传入参数进行判断,输出结果
		System.out.println(c.ck(50));
	}

}

 

package 例题;

interface CG4{//测试接口
	void ck();//测试方法
}

public class 例题4 {
	public static void main(String[] args) {
		// 创建局部变量
		int v = 100;
		//实现测试接口
		CG4 c = () -> {
			//使用局部变量赋值
			int num = v - 90;
			//更改局部变量,此处报错,无法编译
			v = 12;
		};
	}

}

 

package 例题;
//接口
interface CG5{
	String ck();
}


public class 例题5 {
	//成员变量
	int v = 100;
	//成员方法
	public void acto() {
		//lambda补全方法体
		CG5 c = () ->{
			//局部变量
			v = 10;
			return null;
		};
		System.out.println("运行方法前v=" + v);
		c.ck();
		System.out.println("运行方法后v=" + v);
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		例题5 l = new 例题5();
		l.acto();
	}

}

 

package 例题;

import java.util.Scanner;

interface An{	//防沉迷接口
	boolean ck(int age)throws UnderAgeException;//抽象检查方法,抛出用户未成年异常
}

class UnderAgeException extends Exception{	//自定义异常
	public UnderAgeException(String message) {//有参构造方法
		super(message);//调用原有父类构造方法
	}
}

public class 例题6 {

	public static void main(String[] args) {
		//lambda 表达式创建An对象,默认抛出原有异常
		An a = (b)->{
			if(b<18) {//如果年龄小于18
				throw new UnderAgeException("未满18周岁,开启防沉迷模式!");//抛出异常
			}
			else {
				return true;//返回通过
			}
		};
		//控制台扫描器
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入年龄:");//提示
		int age = sc.nextInt();//获取用户输入的年龄
		
		try {			//前面抛出过异常,此处捕捉
			if(a.ck(age)) {//验证年龄
				System.out.println("欢迎━(*`∀´*)ノ亻!进入XX世界");
			}
		}
		catch(UnderAgeException e) {
			System.out.println(e);//打印异常
		}
		sc.close();//关闭扫描器
	}
}

 

package 例题;

//接口
interface Add{
	int add(int a, int b);
}

public class 例题7 {
	//静态方法
	static int add1(int x, int w){
		return x + w;
	}
	public static void main(String[] args) {
		//引用静态方法
		Add a1 = 例题7 :: add1;
		System.out.println("静态方法的引用:" + a1.add(8, 5));

	}

}

 

package 例题;

import java.text.SimpleDateFormat;
import java.util.Date;

//创建接口
interface Dat{
		String method(Date date);
	}

public class 例题8 {
	
	//创建方法
	public String format(Date date) {
		//创建日期格式化对象并设置格式
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		//返回格式化结果
		return sdf.format(date);
	}
	
	public static void main(String[] args) {
		// 创建对象
		例题8 l1 = new 例题8();
		//利用对象引用方法
		Dat d1 = l1 :: format;
		//创建时间对象
		Date date = new Date();
		System.out.println("默认格式:" + date);
		System.out.println("接口输出的格式:" + d1.method(date));
	}

}

 

package 例题;

import java.util.HashSet;

interface Pa<T>{//测试接口
	int md(T[] t);//抽象方法
}

class PaDemo{//测试类
	//静态方法,使用泛型参数,在方法名之前定义泛型。此方法用于查找数组中的重复元素个数
	static public <T> int rt(T[] t) {
		int ah = t.length;//记录数组长度
		java.util.HashSet<T> set = new HashSet<>();//创建哈希集合
		for(T tmp : t) {//遍历数组
			set.add(tmp);
		}
		return ah - set.size();//返回数组长度与集合长度的差
	}
}
public class 例题9 {

	public static void main(String[] args) {
		Integer a[] = {1, 1, 2, 3, 1, 5, 6, 1, 8, 8};
		String s[] = {"王", "李", "赵", "陈", "李", "孙", "张"};
		//创建接口对象,integer作为泛型,引人PaDemo类的静态方法,方法名要定义泛型
		Pa<Integer> p1 = PaDemo::<Integer>rt;
		System.out.println("整数数组重复元素个数:" + p1.md(a));//调用接口方法
		创建接口对象,String作为泛型,引人PaDemo类的静态方法
		//方法名不定义泛型,则默认使用接口已定义好的泛型
		Pa<String> p2 = PaDemo::rt;
		System.out.println("字符串数组重复元素个数:" + p2.md(s));
		
	}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1189284.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

leetCode 206.反转链表 图解

206. 反转链表 - 力扣&#xff08;LeetCode&#xff09; 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表 class Solution { public:ListNode* reverseList(ListNode* head) {ListNode* s NULL;ListNode* phead;while(p) {headhead->nex…

分享4个MSVCP100.dll丢失的解决方法

msvcp100.dll是一个重要的动态链接库文件&#xff0c;它是Microsoft Visual C 2010 Redistributable Package的一部分。这个文件的作用是提供在运行C程序时所需的函数和功能。如果计算机系统中msvcp100.dll丢失或者损坏&#xff0c;就会导致软件程序无法启动运行&#xff0c;会…

python-jupyter实现OpenAi语音对话聊天

1.安装jupyter 这里使用的是jupyter工具&#xff0c;安装时需要再cmd执行如下命令&#xff0c;由于直接执行pip install jupyter会很慢&#xff0c;咱们直接使用国内源 pip install --user jupyter -i http://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.t…

leetcode一道比较难的链表题

今天还是继续来分享我们的链表题&#xff0c;这个题目有点难&#xff0c;主要是思路比较难想&#xff0c;但是如果沥青思路写起来就比较简单了&#xff08;我乱讲的&#xff09; 随机链表的复制 这个是题目的描述&#xff0c;大家也可以在链接里看&#xff0c;那我把这道题目…

React中组件之间如何通信?

一、是什么 我们将组件间通信可以拆分为两个词&#xff1a; 组件通信 回顾Vue系列的文章&#xff0c;组件是vue中最强大的功能之一&#xff0c;同样组件化是React的核心思想 相比vue&#xff0c;React的组件更加灵活和多样&#xff0c;按照不同的方式可以分成很多类型的组件…

Unity游戏开发基础之数据结构部分

设计模式 含义&#xff1a;帮助我们降低对象之间的耦合度常用的方法称为设计模式。使用设计模式是为了可重用代码&#xff0c;让代码更容易被其他人所理解&#xff0c;保证代码可靠性&#xff0c;使代码编制真正工程化&#xff0c;这是软件工程的基石。 分类&#xff1a; 创建…

Figma转Sketch文件教程,超简单!

相信大家做设计的都多多少少听过一点Figma和Sktech&#xff0c;这2个设计软件是目前市场上很受欢迎的专业UI设计软件&#xff0c;在全球各地都有很多粉丝用户。但是相对来说&#xff0c;Figma与Sketch只支持iOS系统有所不同&#xff0c;Figma是一个在线设计软件&#xff0c;不限…

Flink(二)【Flink 部署模式】

前言 今天是Flink学习的第二天&#xff0c;我的心情异常的复杂哈哈哈&#xff08;苦笑&#xff09;&#xff0c;学习上还是比较顺利的&#xff0c;感情上我并不擅长&#xff0c;所以心情波动大在所难免。害&#xff0c;至少还有学习让我不被各种糟糕琐碎的日常生活里的人和事所…

【2023方案开发】无刷电机自动打气泵方案

如今新能源车大行其道&#xff0c;而车厂在考虑成本和设计的情况下&#xff0c;将备胎给取消了&#xff0c;那假如在车胎气压不足的状态下&#xff0c;没有备胎更换&#xff0c;那将如何解决困境。气压不住需要打气&#xff0c;那配备一台打气泵尤为重要&#xff0c;即使常年可…

Git系列之Git入门级(带你走进Git的世界)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是君易--鑨&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《Git实战开发》。&#x1f3af;&#x1f3af; &a…

论文速览 MobiCom 2023 | NeRF2 : Neural Radio-Frequency Radiance Fields

注1:本文系“最新论文速览”系列之一,致力于简洁清晰地介绍、解读最新的顶会/顶刊论文 Xiaopeng Zhao, Zhenlin An, Qingrui Pan, and Lei Yang. 2023. NeRF2: Neural Radio-Frequency Radiance Fields. In Proceedings of the 29th Annual International Conference on Mobil…

AIGC:使用生成对抗网络GAN实现MINST手写数字图像生成

1 生成对抗网络 生成对抗网络&#xff08;Generative Adversarial Networks, GAN&#xff09;是一种非常经典的生成式模型&#xff0c;它受到双人零和博弈的启发&#xff0c;让两个神经网络在相互博弈中进行学习&#xff0c;开创了生成式模型的新范式。从 2017 年以后&#x…

kubectl声明式资源管理命令

一、声明式资源管理介绍&#xff1a; 适合于对资源的修改操作声明式资源管理方法依赖于资源配置清单文件对资源进行管理资源配置清单文件有两种格式&#xff1a;yaml&#xff08;人性化&#xff0c;易读&#xff09;&#xff0c;json&#xff08;易于api接口解析&#xff09;对…

如何排查CPU飙升的问题所在

我们在线上排查问题的时候发现系统的CPU直接爆红了,如何排查问题呢?怎么快速定位问题的所在呢? linux系统下: 首先我们通过top命令来查看那个进程占用CPU过大: top 这里只是简单的模拟一下,假设java进程占用CPU很大,那么我们通过这个进程来查找进程下的线程使用CPU的情况…

【23真题】C9无歧视,专业课均分130!

今天分享的是23年哈尔滨工业大学803的信号与系统部分的试题及解析。 本套试卷难度分析&#xff1a;22年哈今天分享的是23年哈尔滨工业大学803的信号与系统部分的试题及解析。 哈尔滨工业大学803考研真题&#xff0c;我也发布过&#xff0c;若有需要&#xff0c;戳这里自取&…

6-爬虫-scrapy解析数据(使用css选择器解析数据、xpath 解析数据)、 配置文件

1 scrapy解析数据 1.1 使用css选择器解析数据 1.2 xpath 解析数据 2 配置文件 3 整站爬取博客–》爬取详情–》数据传递 scrapy 爬虫框架补充 # 1 打码平台---》破解验证码-数字字母&#xff1a;ddddocr-计算题&#xff0c;滑块&#xff0c;成语。。。-云打码&#xff0c;超…

文件上传 [GXYCTF2019]BabyUpload1

打开题目 传个是jpg文件后缀的一句话木马上去 代码如下 <script languagephp>eval($_POST[v]);</script> 发现上传成功 因此我们需要先上传 .htaccess 文件&#xff0c;然后再上传 2.jpg文件 .htaccess作用&#xff1a;文件将别的后缀名文件内容解析为php程序…

使用matlab实现图像信号的色彩空间转换

利用matlab对图像信号进行读取&#xff0c;并对RGB空间进行转换&#xff0c;如转换到HSI空间等。 下面的这个代码是在使用了rgb2hsi()方法失败后&#xff0c;进行修改的。 rgb2hsi(img)这个方法可以将RGB图像转换为HIS图像&#xff1b;但是爆出了 Untitled5(line 5)hsi rgb2h…

通过Cookie和Session来实现网站中登录账号的功能

文章目录 一、Cookie和Session二、基于Cookie和Session实现登录账号的功能2.1步骤一2.2步骤二2.3步骤三2.4总结通过Cookie和Session来实现登录功能2.5运行截图 一、Cookie和Session cookie是http请求header中的一个属性&#xff0c;是浏览器持久化存储数据的一种机制&#xff…

2023年香港专才计划(输入内地人才计划)拿身份最新申请攻略!

2023年香港专才计划&#xff08;输入内地人才计划&#xff09;拿身份最新申请攻略&#xff01; 近年来&#xff0c;香港受持续的人口老龄化等多因素影响&#xff0c;2022年香港人口总计减少了约12.17万人&#xff0c;跌幅1.6%&#xff0c;其中净移出人数约9.5万人。在此背景下&…