源代码演示:
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
publicclass UserDAOImpl implements UserDAO {
List<User> userList = new ArrayList<User>();
@Override增加
publicvoid addUser(User user) {
userList.add(user);
}
@Override删除
publicvoid deleteUserByid(String id) {
// TODO Auto-generated method stub
for (inti = 0,len = userList.size(); i < len; i++) {
if(id.equals(userList.get(i).getId()))
{
intn = JOptionPane.showConfirmDialog(null, "是否删除","提示",JOptionPane.YES_NO_OPTION);
if(n==0){
userList.remove(userList.get(i));
}
if(n==1){
return ;
}
break;
}
if(!id.equals(userList.get(i).getId())&&i==len-1){
JOptionPane.showConfirmDialog(null, "未知用户","提示",
JOptionPane.CLOSED_OPTION);
}
}
}
@Override修改
publicvoid reviseUser(User user) {
for (inti = 0,len = userList.size(); i < len; i++) {
if(user.getId().equals(userList.get(i).getId())){
String inputName =JOptionPane.showInputDialog(null,"请输入修改后的用户名:\n");
if(inputName == null)
{
return;
}
if(inputName.equals("")){
JOptionPane.showMessageDialog(null, "请输入修改后信息","提示",JOptionPane.ERROR_MESSAGE);
return ;
}
else{
user.setName(inputName);
userList.get(i).setName(user.getName());
break;
}
}
}
}
@Override查所有的
public List<User> getAllUsers() {
returnuserList;
}
@Override查一个
public User getUserById(String id) {
User user =null;
for (inti = 0,len = userList.size(); i < len; i++) {
if(id.equals(userList.get(i).getId())){
user = userList.get(i);
}
}
returnuser;
}
@Override根据关键词查
public List<User> getAllUserByKeywords(Stringkeywords) {
List<User> users = new ArrayList<User>();
for (inti = 0,len = userList.size(); i < len; i++) {
User user1 = userList.get(i);
if(user1.getName().indexOf(keywords)>=0)
{
users.add(user1);
}
}
returnusers;
}
}
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
publicclass UserDAOImpl implements UserDAO {
List<User> userList = new ArrayList<User>();
@Override增加
publicvoid addUser(User user) {
userList.add(user);
}
@Override删除
publicvoid deleteUserByid(String id) {
// TODO Auto-generated method stub
for (inti = 0,len = userList.size(); i < len; i++) {
if(id.equals(userList.get(i).getId()))
{
intn = JOptionPane.showConfirmDialog(null, "是否删除","提示",JOptionPane.YES_NO_OPTION);
if(n==0){
userList.remove(userList.get(i));
}
if(n==1){
return ;
}
break;
}
if(!id.equals(userList.get(i).getId())&&i==len-1){
JOptionPane.showConfirmDialog(null, "未知用户","提示",
JOptionPane.CLOSED_OPTION);
}
}
}
@Override修改
publicvoid reviseUser(User user) {
for (inti = 0,len = userList.size(); i < len; i++) {
if(user.getId().equals(userList.get(i).getId())){
String inputName =JOptionPane.showInputDialog(null,"请输入修改后的用户名:\n");
if(inputName == null)
{
return;
}
if(inputName.equals("")){
JOptionPane.showMessageDialog(null, "请输入修改后信息","提示",JOptionPane.ERROR_MESSAGE);
return ;
}
else{
user.setName(inputName);
userList.get(i).setName(user.getName());
break;
}
}
}
}
@Override查所有的
public List<User> getAllUsers() {
returnuserList;
}
@Override查一个
public User getUserById(String id) {
User user =null;
for (inti = 0,len = userList.size(); i < len; i++) {
if(id.equals(userList.get(i).getId())){
user = userList.get(i);
}
}
returnuser;
}
@Override根据关键词查
public List<User> getAllUserByKeywords(Stringkeywords) {
List<User> users = new ArrayList<User>();
for (inti = 0,len = userList.size(); i < len; i++) {
User user1 = userList.get(i);
if(user1.getName().indexOf(keywords)>=0)
{
users.add(user1);
}
}
returnusers;
}
}
PS:User是另一个类,需要自己写,就像下面的
public class User {
private String id;
private String name;
public User(String id,String name) {
this.id = id;
this.name = name;
}
public String getId() {
return id;
}public String getName() {
return name;
}public void setId(String id) {
this.id = id;
}public void setName(String name) {
this.name = name;
}@Override
public String toString() {
return super.toString();
}
}
UserDAO 是一个接口(是常量和公共的抽象方法组成)
public interface UserDAO {
void addUser(User user);
void deleteUserByid(String id);
void reviseUser(User user);
List<User> getAllUsers();
User getUserById(String id);
List<User> getAllUserByKeywords(String keywords);
}
1. 查看文件中某变量的值: file::variable function::variable 可以通过这种形式指定你所想查看的变量,是哪个文件中的或是哪个函数中的。例如,查看文件f2.c中的全局变量x的值: gdb) p 'f2.c'::x 查看数组的值 有时候,你需要查看一段连续的内存空间的值。比如数组的一段,或是...
安装labelme环境打开Anaconda Prompt, 直接输入pip install labelme即可安装由于课题研究主要针对髋骨附近的股骨进行标注,只需要一种标签即可:方法一1)直接在Anaconda Prompt中输入labelme即可;标注图片的两种方法2)点击OpenDir选择所要标注的图片目录,标签名自己随意起就好了;3)点击File->Change OutputDir来改变保存json文件的位置;4)标注完成后需要生成数据集,首先找到Anaconda环境下的l
java多线程实现方式主要有两种:继承Thread类、实现Runnable接口;package com.test.thread;import java.util.List;public class salePicketThread extends Thread { private List&lt;String&gt; ps; public salePicketThread(Lis...
一.版本控制工具概述 svn是版本管理工具,主要帮助我们管理代码提交日志的。抛开系统来谈,svn分为服务端和客户端。就客户端而言,有很多第三方客户端,但是底层都是官方的命令行客户端。 在公司的开发中,我们一般只需要配置好客户端即可,根据公司给的用户名和密码连上公司的服务器,从服务器上check代码,通过客户端签入代码到服务器。 如果我们想把自己的电脑作为服务器,让自己的电脑承担着服务器
1、8通道汽车示波器8个通道 12位分辨率 20MHz带宽 256MS缓存 80MS/s采样率 最大电压输入达±50 V 完全支持PicoScope汽车软件和波形库 所有的过滤和触发 SuperSpeed USB3.02、4还是8通道的PicoScope?2和4通道的PicoScope 4225和4425是我们推荐大部分维修车间使用的产品。浮地设计、连接探测、200V输入,让它们非常耐用和易用。对于做培训、车辆设计和更复杂诊断的有经验的示波器用户,8通道的PicoSc.
转载:将 React Native 应用签名打包成 APK注明:本文的react-native签名方案基于mac os,在windows下,java命令与生成签名文件的命令是一致的可以通用,生成的.keystore文件可以自定义,生成apk的方式因人而异,这个主要视.json配置文件而定。Android要求所有应用都有一个数字签名才会被允许安装在用户手机上,所以在把应用发布到类似Googl...
在经济全球化的时代,我们的产品也要走向语言全球化,所以我们不得不考虑让一款产品支持多种语言。在SpringMVC中实现国际化的步骤一般分为以下几步:1)、编写国际化配置文件;2)、使用ResourceBundleMessageSource管理国际化资源文件;3)、在页面使用fmt:message取出国际化内容。SpringBoot已经自动帮助我...
第二章第三节:分治法我们首先先介绍分治法。分治法的思想:将原问题分解为几个规模较小但类似于原问题的子问题,递归地求解这些子问题,然后在合并这些子问题的解来解决原问题的解。 还是拿扑克牌举例子,假设桌上有两堆牌面朝上的牌(牌面朝上:有值),每堆都已排序,最小的牌在顶上。我们希望把这两堆牌合并成单一的排好序的输出堆,牌面朝下地放在桌上。应该怎么做呢...
简介:DataGridView 控件用于显示数据提供一个自定义的表。 DataGridView 类使用属性允许单元格、行、列和边框的自定义例如 DefaultCellStyle、 ColumnHeadersDefaultCellStyle、 CellBorderStyle和 GridColor。可以使用 DataGridView 控件显示数据有或没有基础数据源。 未指定数据源,可以创建使用...
本文产生的原因上传一个大文件文件的时候报了OOM查看代码以前的上传代码中使用了URL url = new **URL**(urlStr);conn = (HttpURLConnection) url.openConnection();....省略out = conn.getOutputStream();conn.setRequestMethod("POST");conn.con...
给出点A1,A2,B1,B2的坐标, 分别构成线段A1A2, 线段B1B2, 求两线段的交点坐标 线段A1A2,B1B2如下图所示, 并建立辅助线(图片来源于&lt;&lt;挑战程序设计竞赛2&gt;&gt;)Step1: 先求出B1点到直线A1A2的距离d1, 和B2点到直线A1A2的距离d2 可根据矢量法求出(A1B1为向量, 其它一样) Ste...
SpringBoot各种注解的作用汇总(学习笔记)1. @SpringBootApplication申明让spring boot自动给程序进行必要的配置,这个配置等同于:@Configuration ,@EnableAutoConfiguration 和 @ComponentScan 三个配置。2. @ResponseBody表示该方法的返回结果直接写入HTTP response body中,一般在异步获取数据时使用,用于构建RESTful的api。在使用@RequestMapping后,返回值通常