-
2021-02-12 10:29:10
运用数结构的思想(在数据库中把性别的值设置为 男 1 女 0)
//数据结构思想应用
public static final Integer EMP_GENDER_OF_MAN = 1;
public static final Integer EMP_GENDER_OF_WOMAN = 0;
public static final String EMP_GENDER_OF_MAN_VIEW = "男";
public static final String EMP_GENDER_OF_WOMAN_VIEW = "女";
public static final Map genderMap = new HashMap();
static{
genderMap.put(EMP_GENDER_OF_MAN, EMP_GENDER_OF_MAN_VIEW);
genderMap.put(EMP_GENDER_OF_WOMAN, EMP_GENDER_OF_WOMAN_VIEW);
}
//设置值
public void setGender(Integer gender) {
this.gender = gender;
this.genderView = genderMap.get(gender);
}
//获取值
public Integer getGender() {
return gender;
}
更多相关内容 -
java中的性别字段
2021-02-12 10:29:09我正在创建一个包含三个字段的Employee类:名称,年龄和性别.我需要创建一个性别字段,但用户只能选择男性或女性.我想我必须以布尔形式执行此操作,但我不知道我将如何做到这一点.谁能帮我吗?到目前为止,我有:public ...我正在创建一个包含三个字段的Employee类:名称,年龄和性别.我需要创建一个性别字段,但用户只能选择男性或女性.我想我必须以布尔形式执行此操作,但我不知道我将如何做到这一点.谁能帮我吗?
到目前为止,我有:
public class Employee {
private String name;
private int age;
private boolean gender;
private boolean male;
private boolean female;
public Employee(String name, int age, boolean gender)
{
this.name = name;
this.age = age;
boolean f = female;
boolean m = male;
if (gender = f)
{
System.out.print("female");
}
else if (gender = m)
{
System.out.print("male");
}
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public boolean isGender() {
return gender;
}
public void setGender(boolean gender)
{
if (gender = f)
{
System.out.print("female");
}
else if (gender = m)
{
System.out.print("male");
}
}
}
-
java-GUI-性别选择按钮
2020-07-06 00:07:24一开始性别选择使用的是文本框输入,但是不符合我们平时的使用习惯,便进行了改进。 单选按钮代码如下: ButtonGroup sex=new ButtonGroup(); JRadioButton male=new JRadioButton("男"); JRadioButton female=...性别选择按钮添加
最终成果图:
一开始性别选择使用的是文本框输入,但是不符合我们平时的使用习惯,便进行了改进。单选按钮代码如下:
ButtonGroup sex=new ButtonGroup(); JRadioButton male=new JRadioButton("男"); JRadioButton female=new JRadioButton("女");
但是我之前写的面板单独在一个类,继承了JPanel,add函数不能直接添加sexGroup。如果分别添加male和female会串行。(如下图所示:
解决办法:
将sexGroup添加至JPanel组件后进行添加即可。
ButtonGroup sex=new ButtonGroup(); sexGroup = new JPanel(); sex.add(male); sex.add(female); sexGroup.add(male); //把单选按钮添加到组中 sexGroup.add(female); this.add(sexGroup);
性别按钮的存入数据库问题
重写itemStateChanged函数,根据响应,对字符串str赋值“男”或“女”;调用setGender函数对性别进行赋值。调用setGender函数,将性别正常存入数据库即可。
关键代码:@Override public void itemStateChanged(ItemEvent e) { String str = null; if(e.getSource() == inputInnerPanel.male){ str = "男"; }else if (e.getSource() == inputInnerPanel.female){ str = "女"; } inputInnerPanel.setGender(str); }
性别按钮的读取显示问题
调用sentGenders函数
public void setGenders(String n){ if (n.equals("男")) { male.setSelected(true);//设定按钮默认选项 }else if(n.equals("女")) { female.setSelected(true);//设定按钮默认选项 } }
读取数据库中性别属性的值
rs.getString("sex");
显示在界面按钮中
调用setGenders函数,将性别值显示在界面按钮中。这里需要注意的是:数据库中sex的数据类型为varchar2
-
Java【代码分享 01】Java版本的NGender根据中文姓名猜测其性别及男性化/女性化程度(Python版本地址+Java...
2022-03-17 11:57:19Java【代码分享 01】Java版本的NGender根据中文姓名猜测其性别及男性化/女性化程度(Python版本地址+Java版本源码+基础数据)【资源链接】
链接:https://pan.baidu.com/s/1NSH5T0qkTTcOJbURd9Mq7A
提取码:nnx6【包含文件】
1.需求说明
由于项目需要通过姓名判断性别,在网络上找到了
Python
的NGender
包,但项目的技术栈是Java
,首先想到的是使用jython-standalone
来执行 Python 代码,在 idea 成功调用,在部署时却无法找到NGender
模块,最终无法解决部署问题因此有了 Java 版本的 NGender 😄 有成功部署的小伙伴儿可以分享一下经验。Java 版本说明:- 82%的准确率(与python版本一致)
- 可用于猜测性别
- 可用于判断名字的男性化/女性化程度
2.代码实现
2.1 依赖
用于解析
csv
类型文件,非必须依赖,可自行解析。<!-- 用于解析csv文件 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.6.6</version> </dependency>
2.2 源码
源码从 Python 代码转化,并未进行优化。
@Slf4j @Component public class GenderUtils { private Map<String, String> genderMap = new HashMap<>(9443); private int maleTotal = 0; private int femaleTotal = 0; private int genderTotal = 0; @PostConstruct private void init() { // 加载文件 File toFile = new File("data/ngender/charfreq.csv"); // 解析CSV文件 CsvData rows = CsvUtil.getReader().read(toFile); for (int i = 1, rowCount = rows.getRowCount(); i < rowCount; i++) { CsvRow row = rows.getRow(i); maleTotal += Integer.parseInt(row.get(1)); femaleTotal += Integer.parseInt(row.get(2)); } genderTotal = maleTotal + femaleTotal; // 封装对象 for (int i = 1, rowCount = rows.getRowCount(); i < rowCount; i++) { CsvRow row = rows.getRow(i); String nameChar = row.get(0); int maleNum = Integer.parseInt(row.get(1)); int femaleNum = Integer.parseInt(row.get(2)); genderMap.put(nameChar, 1.0 * femaleNum / femaleTotal + "," + 1.0 * maleNum / maleTotal); } } /** * 根据姓名判断性别(仅支持中文) * * @param nameString 姓名 * @return 性别信息 */ public Map<String, String> guessGenderByName(String nameString) { // 截取【名】的全部字符字符 char[] nameChars = nameString.substring(1).toCharArray(); // 获取性别可能性数据 double maleProb = getGenderProb(nameChars, 1); double femaleProb = getGenderProb(nameChars, 0); // 返回结果 if (maleProb > femaleProb) { return new HashMap<String, String>(2) {{ put("male", String.valueOf(maleProb / (maleProb + femaleProb))); }}; } else if (femaleProb > maleProb) { return new HashMap<String, String>(2) {{ put("female", String.valueOf(femaleProb / (maleProb + femaleProb))); }}; } else { return new HashMap<String, String>(2) {{ put("unknown", "0"); }}; } } /** * 计算性别可能性 * * @param nameChars 【名】的全部字符字符 * @param genderFlag 0 female 1 male * @return 性别及可能性 */ private double getGenderProb(char[] nameChars, int genderFlag) { double baseProb; if (genderFlag == 0) { baseProb = 1.0 * femaleTotal / genderTotal; } else { baseProb = 1.0 * maleTotal / genderTotal; } for (char nameChar : nameChars) { baseProb *= Double.parseDouble(MapUtils.getString(genderMap, nameChar + "", "0,0").split(",")[genderFlag]); } return baseProb; } }
2.3 调用
charfreq.csv
文件有9943条,整个工具类的加载需要88ms【仅测试一次】
。Map<String, String> resultMap = genderUtils.guessGenderByName("刘芳芳"); // "female": "0.9835037905504539"
3.其他
Python 版本的 NGender 下载地址 及介绍。
-
java编程创建单选按钮
2015-10-07 22:24:47用java编程来实现单选按钮组件,通过使用单选按钮来实现性别选择,并创建监听器进行监听。 -
java 通过身份证判断性别
2020-07-13 17:08:18根据身份证号码判断用户性别,0:男 ;1:女 public Integer judgeSex(String idCard) { String sexStr = idCard.substring(16, 17); int i = Integer.parseInt(sexStr); if (i % 2 == 0) { return 1; } else ... -
java GUI 性别单选框 日期选择框
2019-06-03 13:48:42/* 性别单选框 */ sex = new JLabel("性 别"); sex.setBounds(20, 105, 105, 30); man = new JRadioButton("男"); man.setSelected(true); woman = new JRadioButton("女"); man.setBou... -
Java生成随机姓名、性别和年龄
2020-09-28 10:34:19import java.util.Random; public class RandInfo { String familyName = "赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻水云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳鲍史唐费岑薛雷... -
JAVA版身份证获取性别、出生日期及年龄
2019-08-09 01:17:29NULL 博文链接:https://bijian1013.iteye.com/blog/2184409 -
Java的8个基本数据类型
2021-03-15 19:17:47Java语言提供了八种基本类型。六种数字类型(四个整型,两个浮点型),一种字符类型,还有一种布尔型。1.整数定义:没有小数部分的数字,负数是允许的。种类:Java提供四种整数类型:byte 1个字节 -128到127short 2个... -
java -封装一个类。(姓名、年龄、性别)
2021-04-09 11:06:56//定义一个类。public class Maopao1{//创建私有的对象。private String name;private int age;private String sex;//获取一个公共的对象值。(姓名)public String getName(String name){//返回对象值。... -
JavaCV实现年龄 | 性别 识别(优化版)
2022-04-10 12:49:48之前的系列教程中写了关于怎么使用Java + OpenCV 进行人脸性别和年龄的识别,但是不同的环境需要安装和搭建OpenCV运行环境,现在用JavaCV重新修改了一下.思路啥的都一样,就不写了,主要是分享一下代码. 二、... -
JavaCV的摄像头实战之十二:性别检测
2021-12-23 08:07:06实现性别检测并在预览窗口实时展现 -
Java 枚举类和自定义枚举类和enum声明及实现接口的操作
2021-03-17 22:07:182、枚举类和普通类的区别: ①使用 enum 定义的枚举类默认继承了 java.lang.Enum 类 ②枚举类的构造器只能使用 private 访问控制符 ③枚举类的所有实例必须在枚举类中显式列出(, 分隔 ; 结尾). 列出的实例系统会... -
Java + OpenCV 实现图片性别识别(JavaCV)
2021-04-17 10:04:44如图所示, 需要实现在图片上检测出人脸并标识出性别, 因为网络上大部分文章都是基于python的, 我个人对于Java 又比较情有独钟, 所以, 花费了一两天专门研究了一下, 本人对于opencv的掌握程度也是处于入门阶段, 整理... -
java使用 静态常量给性别赋值
2017-04-25 08:34:06 ![图片说明]... 如图每次Test的时候性别总是为null,我想把Q仔Q妹换成“雄”和“雌”。该怎么改呢?新手求指点 -
java:生成中文姓名(区分男女)
2021-03-17 13:34:10//根据性别从不同的HashMap中随机读取名字 if (sex.toLowerCase()=="girl"){ for (int i = 0; i ; i++) { name = name + grilnameDict.get(Integer.valueOf(rand.nextInt(grilnameDict.size())+1)); } }else if ... -
【Java学习笔记之八】JavaBean中布尔类型使用注意事项
2021-03-14 22:49:43JavaBean是一个标准,遵循标准的Bean是一个带有属性和getters/setters方法的Java类。JavaBean的定义很简单,但是还有有一些地方需要注意,例如Bean中含有boolean类型的属性。我们知道对于一个属性来说,如果其命名为... -
java根据身份证号判断用户性别
2022-01-09 16:09:421.实现代码 public class BirthUtils { /** * 根据身份证号判断用户性别 * @param cardNo * @return */ public static String getSex(String cardNo) { String sexStr = "0"; if (cardNo.length() == 15) { sexStr =... -
java代码-使用java构造Person类。包括姓名(name),性别和年龄(age)的源代码
2022-04-03 17:22:21java代码-使用java构造Person类。包括姓名(name),性别和年龄(age)的源代码 ——学习参考资料:仅用于个人学习使用! -
java基础教程301集195 定义性别.mp4
2022-05-19 02:36:30java基础教程301集195 定义性别.mp4 -
java 人脸识别 性别识别
2019-06-28 12:18:38最近对人脸识别很感兴趣,就自己钻研学习了一下,...用java+opencv实现的。 主要步骤: 1、打开摄像头。 2、加载人脸识别器。 3、循环视频流的每帧进行解析,实现人脸检测、切图、更改尺寸。 4、性别识别... -
java中,我们该用哪种方式表示人的性别
2015-01-13 19:18:48public class Test1 { public static void main(String[] args) { //字符串判断男女 String sex="男"; //字符类型判断男女 char sex2='女'; //整数判断男女 int a=1; ... else -
如何用java实现下拉菜单
2021-03-05 17:59:11//核心代码String[]sg={"苹果","香蕉","樱桃","山楂"};JComboBox<String>jcb=newJComboBox<...完整代码importjava.awt.*;importjavax.swing.*;publicclassMFrameextendsJFrame{publicMFrame(){St... -
年龄识别, 性别识别, 图片分类, 人脸特征点检测模型资源
2021-06-29 09:27:43Java + OpenCV 系列专栏已经亲测可用 博客地址: https://yinyue.blog.csdn.net/article/details/115827069 https://yinyue.blog.csdn.net/article/details/115788931 ...图片分类: ...synset_words.txt ... -
单选按钮实现性别的选择.rar
2010-07-02 14:27:58单选按钮实现性别的选择.rar单选按钮实现性别的选择.rar单选按钮实现性别的选择.rar -
Java项目:养老院管理系统(java+SSM+JSP+Easyui+maven+mysql)
2022-03-06 19:14:52老人: 老人编号,姓名,性别,年龄,老人照片,老人介绍,登记用户,登记时间 房间类型: 房间类型id,房间类型名称 房间: 房间编号,房间类型,房间名称,房间主图,房间价格,房间详情,房间状态 订单: 订单编号,入住房间,入住... -
使用javafaker制造假数据
2019-09-10 20:35:15使用javafaker制造假数据 python中有一个常用的制造假数据的包faker,java中也有类似的包,名叫javafaker,地址 DiUS javafaker。 引入到java项目中非常简单: 引入包 以maven为例,pom文件中添加: <dependency&... -
Java根据身份证号算出性别和年龄
2019-11-21 09:58:19有时候做一些功能的时候,性别和年龄都传的话用户输入的东西就比较多,页面不够精简,用户体验也不好,所以最好是用户输入身份证号后,我们自己来计算年龄和性别。 身份证号倒数第二位奇数(单数,1、3、5、7、9)为...