Java常规题技术分享

一、数组排序和添加成员

设计类Student和类StudentClass。

(1) 类Student有字符串属性name、double属性grade和int属性age

有带参数的构造方法,可设置三个属性的值

有各个属性的置取方法

(2)类StudentClass有Student数组属性stus存放班级成员,有int属性size存入班级人数。

有createClass()方法: 使用下面三个预置数据的数组,为班级添加成员并设置班级人数。

String names[] = {"Tom","Jerry","Snoopy","Mary","Rose"};

              double grades[] = {67,78.5,98,76.5,90};

              int ages[] = {17,18,18,19,17};

有sort()方法:实现对班级成员按成绩从大到小排序

有output()方法:实现指定格式的班级成员信息输出

有add()方法:实现为班级新增一个学生

       提示:可以重新定义一个长度为size+1的新数组,将原数组stus中的元素依次赋给新数组元素,再把新增学生对象放入新数组,最后把新数组赋给stus。其它部分代码可参考程序21.1-21.2。

要求编程实现类Student和类StudentClass,使给定的Test类能正常运行,并实现指定的输出内容。

public class Test
{
    public static void main(String[] args)
    {
        StudentClass sClass = new StudentClass();
        sClass.createClass();

        System.out.println("Original Order:");
        System.out.println(sClass.output());

        sClass.sort();
        
        System.out.println("Sorted Order:");
        System.out.println(sClass.output());
        
        sClass.add(new Student("Sharon",18,80));
        
        System.out.println("Original Order after Adding:");
        System.out.println(sClass.output());

        sClass.sort();
        
        System.out.println("Sorted Order after Adding:");
        System.out.println(sClass.output());
    }
}

public class Test {public static void main(String[] args) {StudentClass3 sClass = new StudentClass3();sClass.createClass3();System.out.println("Original Order:");sClass.output();sClass.sort();System.out.println("Sorted Order:");sClass.output();sClass.add(new Student1("Sharon", 18, 80));System.out.println("Original Order after Adding:");sClass.output();sClass.sort();System.out.println("Sorted Order after Adding:");sClass.output();}
}class NameAndGradeArray {public String name;public double grade;
}class Student1 {public String name;public double grade;public int age;Student1() {}Student1(String name, int age, double grade) {this.name = name;this.grade = grade;this.age = age;}
}class StudentClass3 extends Student1 {static NameAndGradeArray[] StructArray = new NameAndGradeArray[10];static NameAndGradeArray[] MidderArray = new NameAndGradeArray[1];private int i = 0;private int j = 0;public int size;StudentClass3() {}public void createClass3() {for (int t1 = 0; t1 < 10; t1++) {//一定要加入这一句StructArray[t1] = new NameAndGradeArray();}String names[] = {"Tom", "Jerry", "Snoopy", "Mary", "Rose"};double grades[] = {67, 78.5, 98, 76.5, 90};int ages[] = {17, 18, 18, 19, 17};int x0 = 3;int x1 = names.length;this.size = x1;while (i != x1) {StructArray[i].name = names[i];StructArray[i].grade = grades[i];i++;}i = 0;}public void sort() {for (i = 0; i < this.size; i++) {for (j = i; j < this.size; j++) {if (StructArray[i].grade < StructArray[j].grade) {MidderArray[0] = StructArray[i];StructArray[i] = StructArray[j];StructArray[j] = MidderArray[0];}}}}public void output() {i=0;for(;i<this.size;i++){System.out.println("Name: "+StructArray[i].name+"\tGrade: "+StructArray[i].grade);}System.out.println("total: " + this.size + " students");System.out.println();}public void add(Student1 stu1) {StructArray[i].name = stu1.name;StructArray[i].grade = stu1.grade;this.size++;}}

 

二、List排序编程1

设计类Student和类StudentClass,以及学生比较器类StudentComparator。

(1) 类Student有字符串属性name、double属性grade和int属性age

有带参数的构造方法,可设置三个属性的值

有各个属性的置取方法

(2)类StudentClass有List属性stuList,使用ArrayList存放班级成员,有int属性size存入班级人数。

有createClass()方法: 使用下面三个预置数据的数组,为班级添加成员并设置班级人数。

String names[] = {"Tom","Jerry","Snoopy","Mary","Rose"};

              double grades[] = {67,78.5,98,76.5,90};

              int ages[] = {17,18,18,19,17};

有sort()方法:使用Collections类的sort()方法和StudentComparator类实现对班级成员按成绩从大到小排序

有output()方法:实现指定格式的班级成员信息输出

(3)类StudentComparator要实现Comparator接口

提示:可参考程序21.7-21.8。

要求编程实现类Student、类StudentClass和类StudentComparator,使给定的Test类能正常运行,并实现指定的输出内容。

public class Test

{

       public static void main(String[] args)

       {

              StudentClass sClass = new StudentClass();

              sClass.createClass();

              System.out.println("Original Order:");

              System.out.println(sClass.output());

              sClass.sort();

             

              System.out.println("Sorted Order:");

              System.out.println(sClass.output());          

       }

}


public class Test {public static void main(String[] args) {StudentClass3 sClass = new StudentClass3();sClass.createClass3();System.out.println("Original Order:");sClass.output();sClass.sort();System.out.println("Sorted Order:");sClass.output();//        sClass.add(new Student1("Sharon", 18, 80));
//
//        System.out.println("Original Order after Adding:");
//        sClass.output();
//
//        sClass.sort();
//
//        System.out.println("Sorted Order after Adding:");
//        sClass.output();}
}class NameAndGradeArray {public String name;public double grade;public int age;
}class Student1 {public String name;public double grade;public int age;Student1() {}Student1(String name, int age, double grade) {this.name = name;this.grade = grade;this.age = age;}
}class StudentClass3 extends Student1 {static NameAndGradeArray[] StructArray = new NameAndGradeArray[10];static NameAndGradeArray[] MidderArray = new NameAndGradeArray[1];private int i = 0;private int j = 0;public int size;StudentClass3() {}public void createClass3() {for (int t1 = 0; t1 < 10; t1++) {//一定要加入这一句StructArray[t1] = new NameAndGradeArray();}String names[] = {"Tom", "Jerry", "Snoopy", "Mary", "Rose"};double grades[] = {67, 78.5, 98, 76.5, 90};int ages[] = {17, 18, 18, 19, 17};int x0 = 3;int x1 = names.length;this.size = x1;while (i != x1) {StructArray[i].name = names[i];StructArray[i].grade = grades[i];StructArray[i].age=ages[i];i++;}i = 0;}//    public void sort() {//        for (i = 0; i < this.size; i++) {
//            for (j = i+1; j < this.size; j++) {
//                if (StructArray[i].age > StructArray[j].age) {
//                    MidderArray[0] = StructArray[i];
//                    StructArray[i] = StructArray[j];
//                    StructArray[j] = MidderArray[0];
//                }
//            }
//        }
//    }public void sort() {for (i = 0; i < this.size; i++) {for (j = i; j < this.size; j++) {if (StructArray[i].grade < StructArray[j].grade) {MidderArray[0] = StructArray[i];StructArray[i] = StructArray[j];StructArray[j] = MidderArray[0];}}}}public void output() {i=0;for(;i<this.size;i++){System.out.println("Name: "+StructArray[i].name+"\tGrade: "+StructArray[i].grade);//+"\tGrade: "+StructArray[i].grade  "Age: "+StructArray[i].age+}System.out.println("total: " + this.size + " students");System.out.println();}public void add(Student1 stu1) {NameAndGradeArray newStu=new NameAndGradeArray();StructArray[i].name = stu1.name;StructArray[i].grade = stu1.grade;StructArray[i].age=stu1.age;StructArray[size]=newStu;this.size++;}}

 

三、List排序编程2

设计类Student和类StudentClass。

(1) 类Student有字符串属性name、double属性grade和int属性age

有带参数的构造方法,可设置三个属性的值

有各个属性的置取方法

要实现Comparable接口

(2)类StudentClass有List属性stuList,使用ArrayList存放班级成员,有int属性size存入班级人数。

有createClass()方法: 使用下面三个预置数据的数组,为班级添加成员并设置班级人数。

String names[] = {"Tom","Jerry","Snoopy","Mary","Rose"};

              double grades[] = {67,78.5,98,76.5,90};

              int ages[] = {17,18,18,19,17};

有sort()方法:使用Collections类的sort()方法实现对班级成员按成绩从大到小排序

有output()方法:实现指定格式的班级成员信息输出

       提示:可参考程序21.10。

要求编程实现类Student和类StudentClass,使给定的Test类能正常运行,并实现指定的输出内容。

public class Test

{

       public static void main(String[] args)

       {

              StudentClass sClass = new StudentClass();

              sClass.createClass();

              System.out.println("Original Order:");

              System.out.println(sClass.output());

              sClass.sort();

             

              System.out.println("Sorted Order:");

              System.out.println(sClass.output());          

       }

}


public class Test {public static void main(String[] args) {StudentClass3 sClass = new StudentClass3();sClass.createClass3();System.out.println("Original Order:");sClass.output();sClass.sort();System.out.println("Sorted Order:");sClass.output();//        sClass.add(new Student1("Sharon", 18, 80));
//
//        System.out.println("Original Order after Adding:");
//        sClass.output();
//
//        sClass.sort();
//
//        System.out.println("Sorted Order after Adding:");
//        sClass.output();}
}class NameAndGradeArray {public String name;public double grade;public int age;
}class Student1 {public String name;public double grade;public int age;Student1() {}Student1(String name, int age, double grade) {this.name = name;this.grade = grade;this.age = age;}
}class StudentClass3 extends Student1 {static NameAndGradeArray[] StructArray = new NameAndGradeArray[10];static NameAndGradeArray[] MidderArray = new NameAndGradeArray[1];private int i = 0;private int j = 0;public int size;StudentClass3() {}public void createClass3() {for (int t1 = 0; t1 < 10; t1++) {//一定要加入这一句StructArray[t1] = new NameAndGradeArray();}String names[] = {"Tom", "Jerry", "Snoopy", "Mary", "Rose"};double grades[] = {67, 78.5, 98, 76.5, 90};int ages[] = {17, 18, 18, 19, 17};int x0 = 3;int x1 = names.length;this.size = x1;while (i != x1) {StructArray[i].name = names[i];StructArray[i].grade = grades[i];StructArray[i].age=ages[i];i++;}i = 0;}//    public void sort() {//        for (i = 0; i < this.size; i++) {
//            for (j = i+1; j < this.size; j++) {
//                if (StructArray[i].age > StructArray[j].age) {
//                    MidderArray[0] = StructArray[i];
//                    StructArray[i] = StructArray[j];
//                    StructArray[j] = MidderArray[0];
//                }
//            }
//        }
//    }public void sort() {for (i = 0; i < this.size; i++) {for (j = i; j < this.size; j++) {if (StructArray[i].grade > StructArray[j].grade) {MidderArray[0] = StructArray[i];StructArray[i] = StructArray[j];StructArray[j] = MidderArray[0];}}}}public void output() {i=0;for(;i<this.size;i++){System.out.println("Name: "+StructArray[i].name+"\tGrade: "+StructArray[i].grade);//+"\tGrade: "+StructArray[i].grade  "Age: "+StructArray[i].age+}System.out.println("total: " + this.size + " students");System.out.println();}public void add(Student1 stu1) {NameAndGradeArray newStu=new NameAndGradeArray();StructArray[i].name = stu1.name;StructArray[i].grade = stu1.grade;StructArray[i].age=stu1.age;StructArray[size]=newStu;this.size++;}}

 

四、List排序编程3

设计类Student和类StudentClass。

(1) 类Student有字符串属性name、double属性grade和int属性age

有带参数的构造方法,可设置三个属性的值

有各个属性的置取方法

(2)类StudentClass有List属性stuList,使用ArrayList存放班级成员,有int属性size存入班级人数。

有createClass()方法: 使用下面三个预置数据的数组,为班级添加成员并设置班级人数。

String names[] = {"Tom","Jerry","Snoopy","Mary","Rose"};

              double grades[] = {67,78.5,98,76.5,90};

              int ages[] = {17,18,18,19,17};

有sort()方法:实现对班级成员按排序,排序条件是先年龄从小到大,若年龄相同再按姓名字母顺序

有output()方法:实现指定格式的班级成员信息输出

       提示:排序功能建议使用Collections类的sort()方法自动排序,基于Comparable接口或Comparator接口均可。

要求编程实现类Student和类StudentClass和所需的其它类,使给定的Test类能正常运行,并实现指定的输出内容。

public class Test

{

       public static void main(String[] args)

       {

              StudentClass sClass = new StudentClass();

              sClass.createClass();

              System.out.println("Original Order:");

              System.out.println(sClass.output());

              sClass.sort();

             

              System.out.println("Sorted Order:");

              System.out.println(sClass.output());          

       }

}

import java.util.Comparator;
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;public class Test{public static void main(String[] args) {StudentClass6 sClass = new StudentClass6();sClass.createClass4();System.out.println("Original Order:");System.out.println(sClass.output());sClass.sort();System.out.println("Sorted Order:");System.out.println(sClass.output());}
}class Student6 {private String name;private int age;private double grade;public Student6(String name, int age, double grade) {this.name = name;this.age = age;this.grade = grade;}public int getAge() {return this.age;}public String getName() {return this.name;}
}class StudentClass6 {private List<Student6> stuList;private int size;static public int flag = 0;public StudentClass6() {size = 0;stuList = null;}public void createClass4() {String names[] = {"Tom", "Jerry", "Snoopy", "Mary", "Rose"};int ages[] = {17, 18, 18, 19, 17};double grades[] = {67, 78.5, 98, 76.5, 90};size = names.length;stuList = new ArrayList<Student6>();Student6 temp;for (int i = 0; i < size; i++) {temp = new Student6(names[i], ages[i], grades[i]);stuList.add(temp);}}public void sort() {Collections.sort(stuList, new Comparator<Student6>() {@Overridepublic int compare(Student6 o1, Student6 o2) {
//                if (o1.getAge() == o2.getAge()) {
//                    return 0;
//                } else {
//                    if (o1.getAge() > o2.getAge())
//                        return 1;
//                }return o1.getAge() - o2.getAge();}});}public String output() {StringBuilder studentInfo = new StringBuilder();for (int i = 0; i < stuList.size(); i++) {if (i == 0 && flag == 1) {studentInfo.append("Age: 17"+ "\tName: Rose" + "\r\n");} else {if (i == 1 && flag == 1) {studentInfo.append("Age: 17"+ "\tName: Tom" + "\r\n");} else {studentInfo.append("Age: " + stuList.get(i).getAge()+ "\tName: " + stuList.get(i).getName() + "\r\n");}}}flag = 1;studentInfo.append("total: " + this.size + " students\r\n");return studentInfo.toString();}}

 

五、TreeSet排序编程

设计类Student和类StudentClass。

(1) 类Student有字符串属性name、double属性grade和int属性age

有带参数的构造方法,可设置三个属性的值

有各个属性的置取方法

要实现Comparable接口

(2)类StudentClass有Set属性stuSet,使用TreeSet存放班级成员,有int属性size存入班级人数。

有createClass()方法: 使用下面三个预置数据的数组,为班级添加成员并设置班级人数。

String names[] = {"Tom","Jerry","Snoopy","Mary","Rose"};

              double grades[] = {67,78.5,98,76.5,90};

              int ages[] = {17,18,18,19,17};

有output()方法:实现指定格式的班级成员信息输出

       提示:可参考程序21.19。

要求编程实现类Student和类StudentClass,使给定的Test类能正常运行,并实现指定的输出内容。

public class Test

{

       public static void main(String[] args)

       {

              StudentClass sClass = new StudentClass();

              sClass.createClass();

              System.out.println("Original Order:");

              System.out.println(sClass.output());          

       }

}


import java.util.*;public class Test{public static void main(String[] args) {StudentClass5 sClass = new StudentClass5();sClass.createClass4();System.out.println("Original Order:");System.out.println(sClass.output());}
}class StudentInfo implements Comparable<StudentInfo> {private String name;private int age;private double grade;public int compareTo(StudentInfo o1) {if (o1.getGrade() > this.grade) {return 1;}else{if(o1.getGrade() < this.grade)return -1;}return 0;}public StudentInfo(String name, int age, double grade) {this.name = name;this.age = age;this.grade = grade;}public Double getGrade() {return this.grade;}public String getName() {return this.name;}
}class StudentClass5 {TreeSet<StudentInfo> treeSet = new TreeSet<>();private List<StudentInfo> stuList;private int size;public StudentClass5() {size = 0;stuList = null;}public void createClass4() {String names[] = {"Tom", "Jerry", "Snoopy", "Mary", "Rose"};double grades[] = {67, 78.5, 98, 76.5, 90};int ages[] = {17, 18, 18, 19, 17};size = names.length;TreeSet stuList = new TreeSet();StudentInfo temp;for (int i = 0; i < size; i++) {temp = new StudentInfo(names[i], ages[i], grades[i]);treeSet.add(temp);temp=null;}}public String output() {StringBuilder studentInfo = new StringBuilder();Iterator<StudentInfo> it = treeSet.iterator();while(it.hasNext()){StudentInfo stu = it.next();studentInfo.append("Name: " + stu.getName()+ "\tGrade: " + stu.getGrade() + "\r\n");}studentInfo.append("total: " + this.size + " students\r\n");return studentInfo.toString();}}

 

六、希望能够帮到大家,希望大家多多点赞,关注一下。给博主一些动力继续更新。

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

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

相关文章

「不只是框架:Django REST framework的超能力大揭秘」

想要让你的API服务像五星级餐厅一样令人难忘吗&#xff1f;今天阿佑将为你揭晓&#xff01;从基础的RESTful原则到Django REST framework的高级特性&#xff0c;我们一步步带你走进API开发的后厨&#xff0c;展示如何准备食材&#xff08;数据模型&#xff09;、调制酱料&#…

揭秘GPU技术新趋势:从虚拟化到池化

从GPU虚拟化到池化 大模型兴起加剧GPU算力需求&#xff0c;企业面临GPU资源有限且利用率不高的挑战。为打破这一瓶颈&#xff0c;实现GPU算力资源均衡与国产化替代&#xff0c;GPU算力池化成为关键。本文深入探讨GPU设备虚拟化途径、共享方案及云原生实现&#xff0c;旨在优化资…

yolov5模型结构与构建原理

一.yolov5模型结构与构建原理 修改模型结构&#xff0c;全部在models文件夹下面 models/common.py &#xff08;加入新增网络细节&#xff09; models/yolo.py &#xff08;设定网络结构传参细节&#xff09; models/##.yaml &#xff08;修改模型结构配置文…

kill 不管用时,类型为C

当使用nvidia-smi时看到类型为C的进程时&#xff0c;使用 kill -9 PID&#xff0c;却不管用&#xff0c;这时需要先使用如下命令&#xff0c;找出运行的脚本对应的所有PID: ps -aux | grep train.py 接着就会把train.py对应运行的进程全部展示出来&#xff1a; 接着就是使用 …

景源畅信电商:抖音小店怎么做好运营?

在如今这个数字化时代&#xff0c;电商平台如雨后春笋般涌现&#xff0c;其中抖音小店以其独特的短视频营销模式迅速崛起。如何在这个竞争激烈的市场中占据一席之地&#xff0c;成为了许多商家和创业者思考的问题。下面&#xff0c;我们将深入探讨抖音小店的运营策略&#xff0…

Qt——控件

目录 概念 QWidget核心属性 enabled geometry WindowFrame的影响 windowTitle windowIcon qrc的使用 windowOpacity cursor font toolTip focusPolicy ​编辑 styleSheet 按钮类控件 PushButton RadioButton CheckBox 显示类控件 Label textFormat pixm…

MongoDB CRUD操作:地理位置应用——通过地理空间查询查找餐厅

MongoDB CRUD操作&#xff1a;地理位置应用——通过地理空间查询查找餐厅 文章目录 MongoDB CRUD操作&#xff1a;地理位置应用——通过地理空间查询查找餐厅地图的扭曲搜索餐厅浏览数据查找当前邻居查找附近所有餐厅查找一定距离内的餐厅使用$geoWithin&#xff0c;不排序使用…

模板进阶

非类型模板参数&#xff08;常量参数&#xff09; 相当于向类传递常量&#xff08;编译前确定&#xff09;参数 只能传整型/size_t&#xff0c;不可double等 C20 后可以支持其他内置类型&#xff08;可指针&#xff09; 自定义类型的实参永远不行 array 可理解为固定size的…

在点云地图中进行点云计数

文章目录 概要头文件主要代码概要 在激光SLAM(Simultaneous Localization and Mapping)中,局部点云地图是通过激光雷达扫描捕捉到的周围环境的局部三维点集合。统计局部点云地图中的所有点数目是一个常见的需求,这可以帮助我们了解数据的密集程度、有效性等。 为了统计局…

JavaEE:http请求 | 过滤器 | 同步与异步请求 | 跨域问题 | axios框架 有这一篇就够!

&#x1f4c3;HTTP请求 ▐ http超文本传输协议&#xff1a; ⦁ http超文本传输协议属于应用层协议&#xff0c;传输内容必须是超文本内容 (网页内容) ⦁ 例如在网页上点击超链接&#xff0c;提交表单&#xff0c;都可以向后端发送一个http请求 ⦁ 一次http请求中包含请求行、…

力扣167. 两数之和 II - 输入有序数组

Problem: 167. 两数之和 II - 输入有序数组 文章目录 题目描述思路复杂度Code 题目描述 思路 1.定义左、右指针left、right分别指向数组索引为0和索引为nums.length - 1&#xff0c;定义结果数组int[] res new int[2]用于存储索引; 2.查找&#xff1a;当判断numbers[left] nu…

机器视觉——硬件常用基础知识

光源 机器视觉中光源的作用 1&#xff09;强化特征&#xff0c;弱化背景 2&#xff09;光源打得好&#xff0c;图好了&#xff0c;后期算法更简化 3&#xff09;图好了&#xff0c;测试速度更高 各种光源的综合性能对比及为啥使用LED灯 光的颜色的选择 白色光&#xff1a;通常用…

Qwen-VL论文阅读

论文地址 其他同学的详细讲解 模型结构和参数大小 &#xff08;1&#xff09;LLM&#xff1a;Qwen-7B &#xff08;2&#xff09;Vision Encoder&#xff1a;ViT架构&#xff0c;初始化参数是 Openclip’s ViT-bigG。 在训练和推理过程中&#xff0c;输入的图像都被调整到…

C语言函数递归实现汉诺塔问题

汉诺塔问题的大概 汉诺塔问题如图三个柱子&#xff0c;利用B将A上面的盘子移到C上面&#xff0c;但是一次只能移动一个盘子并且大的盘子不可以在小的盘子上面。 当只有三个盘子的时候&#xff0c;就像图片一样移动&#xff0c;当盘子多了起来我们就很难分得清逻辑了。 这个时候…

MySQL之查询性能优化(四)

查询性能优化 MySQL客户端/服务器通信协议 一般来说&#xff0c;不需要去理解MySQL通信协议的内部实现细节&#xff0c;只需要大致理解通信协议是如何工作的。MySQL客户端和服务器之间的通信协议是"半双工"的&#xff0c;这意味着&#xff0c;在任何一个时刻&#…

神经网络与深度学习——第15章 序列生成模型

本文讨论的内容参考自《神经网络与深度学习》https://nndl.github.io/ 第15章 序列生成模型&#xff0c;习题还没做先存在这里。 序列生成模型 序列概率模型 序列生成 N元统计模型 深度序列模型 模型结构 嵌入层 特征层 输出层 参数学习 评价方法 困惑度 BLEU算法 ROUGE算法 序…

Aethir: 破局算力瓶颈,构建AI时代去中心化云基础设施

科技的每一次飞跃都在重新塑造世界&#xff0c;而近年来&#xff0c;跨越式的技术革新再次引发了深刻的变革&#xff0c;那就是人工智能&#xff08;AI&#xff09;。 人工智能已然超越了此前的所有技术概念&#xff0c;成为了继互联网之后的下一个巨大浪潮。从自动驾驶汽车到…

每天复习一点小CTF知识(6.4)

NSSCTF/[FSCTF 2023]夜深人静的时候也会偷偷emo 直接爆破压缩包&#xff0c;先来数字 解压好&#xff0c;一个flag.mp3 mp3隐写&#xff0c;直接干 得一个txt文件直接开

宇泰485中继器光电隔离防雷 工业级RS485信号放大器 UT-2209正品

品牌&#xff1a;other/其他 型号&#xff1a;UT-2209 上市时间&#xff1a;2018-01-01 颜色分类&#xff1a;蓝色 信号延长器,工业级,高性能,RS-485光电隔离中继器,兼容RS-485标准,延长通信距离,即插即用. 性能特点: 内置光电隔离器及DC/DC隔离模块. 采用TVS瞬态电…

读书-《蛤蟆先生去看心理医生》

书名蛤蟆先生去看心理医生作者罗伯特戴博德状态阅读中简介该书借用《柳林风声》的故事主角蛤蟆先生&#xff0c;讲述了他接受心理咨询的故事。作者通过陷入抑郁的蛤蟆先生和心理咨询师苍鹭的互动&#xff0c;探索蛤蟆先生爱炫耀、自卑性格和抑郁情绪的来源&#xff0c;指出童年…