java源码求java题源代码,最好有注释,
java源码 时间:2021-09-14 阅读:(
)
求一个JAVA的程序的源代码
import java.util.*;
public class ma{
public static String[] splitStringByComma(String source){
if(source==null||source.trim().equals(""))
return null;
maToker = new StringTokenizer(source,",");
String[] result = new maToker.countTokens()];
int i=0;
maToker.hasMoreTokens()){
result[i] =maToker.nextToken();
i ;
}
return result;
}
public static void main(String args[]){
String[] s = splitStringByComma("5,8,7,4,3,9,1");
int[] ii = new int[s.length];
for(int i = 0;i<s.length;i ){
ii[i] =Integer.parseInt(s[i]);
}
Arrays.sort(ii);
//asc
for(int i=0;i<s.length;i ){
System.out.println(ii[i]);
}
//desc
for(int i=(s.length-1);i>=0;i--){
System.out.println(ii[i]);
}
}
}求JAVA源代码
我用了半个小时 帮你写了一个简单的验证用户名和密码登陆问题 别辜负我的好意 下面是代码!(建好包和类 代码粘过去就能用)
实体类 包entity
-------------------------------------------------------------
package entity;
/**
* 用户实体类
* @author new
*
*/
public class Users {
private String name;//用户名
private String pass;//用户密码
/**
* 空的构造函数 用户实力化 此类对象
*/
public Users(){
}
/**
* 构造函数 接收用户名和密码
* @param name
* @param pass
*/
public Users(String name, String pass) {
this.name = name;
this.pass = pass;
}
/**
* 下面set和get方法就不用解释了吧
* @return
*/
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
}
数据库类 包dao(我是模拟一下数据库 没有用到数据库)
--------------------------------------------------------------
package dao;
import java.util.*;
import entity.Users;//导入实体类
/**
* 模拟数据库 用户DAO
* @author new
*
*/
public class UsersDAO {
private static Users users=new Users();
static
{
users.setName("tom");
users.setPass("jerry");
}
/**
* 根据姓名查找这个用户 (模拟一下数据库)
* @param name
* @return
*/
public Users findUserByName(String name)
{
if(name.equals(this.users.getName()))
{
return this.users;
}
return null;
}
}
业务类 包service (验证用户名和密码)
------------------------------------------------------------
package service;
import dao.UsersDAO;
import entity.Users;
/**
* 验证密码 业务类
* @author new
*
*/
public class validatePass {
//实力化DAO对象
private UsersDAO us=new UsersDAO();
/**
* 验证输入的密码是否正确
* @param name
* @param pass
* @return
*/
public Users validate(String name,String pass)
{
Users user=null;
user=us.findUserByName(name);
//如果不为空 说明查到了
if(user!=null)
{
//用查询出来对象的密码和传过来的密码比较
if(user.getPass().equals(pass))
{
return user;
}
}
return null;
}
}
最后是测试test类 包test
----------------------------------------------------------
package test;
import entity.Users;
import service.validatePass;
/**
* 测试类
* @author new
*
*/
public class test {
/**
* main方法 用于测试
* @param args
*/
public static void main(String[] args)
{
//实例化业务类对象
validatePass v=new validatePass();
//用户名和密码
String name="tom";
String pass="jerry";
//开始验证
Users user=v.validate(name, pass);
if(user==null)
{
System.out.println("你输入的用户名或密码错误!");
}else
{
System.out.println("你已经通过验证,成功登陆!");
}
}
}求java题源代码,最好有注释,
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.util.*;
import javax.swing.*;
/**
* 多线程,小球演示. 打开Windows任务管理器,可看到线程变化。
可搜索到,run()方法/.start()
*
* du: 程序技巧体会: 所谓产生一个小球,即是 new 其类对象,其属性携带画小球的 坐标、颜色、所在容器 等参数。
*
* 一个类,属性用来作为参数容器用, 方法....完成功能。
* */
// 运行类
public class BouncePress {
//
public static void main(String[] args) {
JFrame frame = new BouncePressFrame(); // 生成窗口。
执行构造。
-----业务逻辑。
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // similar to
// window
// listener
frame.show();
}
}
class BouncePressFrame extends JFrame {
private BallPressCanvas canvas;
public BouncePressFrame() {
setSize(600, 500); // 窗口大小
setTitle("Bounce Ball");
Container contentPane = getContentPane(); // Swing的窗口不能直接放入东西,只能在其上的ContentPane上放。
canvas = new BallPressCanvas(); // 生成一个新面板。
-----canvas
contentPane.add(canvas, BorderLayout.CENTER); // 窗口中心 加入该面板。
JPanel buttonPanel = new JPanel(); // 再生成一个新面板。
----buttonPanel
// 调用本类方法addButton。
addButton(buttonPanel, "Start", // 生成一个按钮"Start"---加入面板buttonPanel
new ActionListener() { // |------>按钮绑上 action监听器。
public void actionPerformed(ActionEvent evt) { // | 小球容器对象的
addBall(Thread.NORM_PRIORITY - 4, Color.black); // 事件处理时,执行---addBall()方法。
--->产生小球(参数对象)--->加入List中--->开始画球。
}
}); // 按一次,addBall()一次--->产生一个新小球--->加入List中--->开始画此新小球。
// --->画球线程BallPressThread的run()--->小球(参数对象).move()--->每次画时,先移动,再判断,再画。
// --->BallPressCanvas类的canvas对象.paint()--->自动调BallPressCanvas类的paintComponent(Graphics
// g)方法。
// --->该方法,从List中循环取出所有小球,第i个球,--->调该小球BallPress类
// .draw()方法--->调Graphics2D方法画出小球。
--使用color/
addButton(buttonPanel, "Express", new ActionListener() {
public void actionPerformed(ActionEvent evt) {
addBall(Thread.NORM_PRIORITY + 2, Color.red);
}
});
addButton(buttonPanel, "Close", new ActionListener() {
public void actionPerformed(ActionEvent evt) {
System.exit(0);
}
});
contentPane.add(buttonPanel, BorderLayout.SOUTH);
}
public void addButton(Container c, String title, ActionListener listener) {
JButton button = new JButton(title); // 生成一个按钮。
c.add(button); // 加入容器中。
button.addActionListener(listener); // 按钮绑上 action监听器。
}
/** 主要业务方法。
*/
public void addBall(int priority, Color color) {
// 生成 小球(参数对象)
BallPress b = new BallPress(canvas, color); // 生成BallPress对象,携带、初始化
// 画Ball形小球,所需参数:所在容器组件,所需color--black/red.
// 小球加入 List中。
canvas.add(b); // 面板canvas 的ArrayList中 加入BallPress对象。
BallPressThread thread = new BallPressThread(b); // 生成画小球的线程类BallPressThread对象。
传入BallPress对象(携带了画球所需
// 容器、color参数)。
thread.setPriority(priority);
thread.start(); // call run(), ball start to move
// 画球线程开始。
--->BallPressThread的run()--->小球(参数对象).move()--->先移动,再画。
canvas.paint--->BallPressCanvas类的
}
}
// 画球的线程类。
class BallPressThread extends Thread {
private BallPress b;
public BallPressThread(BallPress aBall) {
b = aBall;
}
// 画球开始。
public void run() {
try {
for (int i = 1; i <= 1000; i++) { // 画1000次。
b.move(); // 每次画时,先移动,再判断,再画。
sleep(5); // 所以移动比Bounce.java的球慢。
}
} catch (InterruptedException e) {
}
}
}
// swing面板类.
// 作用1) 本类面板对象.paint()方法---->自动绘制面板,且自动调paintComponent(Graphics
// g)方法,--->重写该方法,绘制面板(及其上组件)。
// 作用2) 该类对象 属性ArrayList balls---兼作小球(参数对象)的容器。
class BallPressCanvas extends JPanel {
private ArrayList balls = new ArrayList();
public void add(BallPress b) {
balls.add(b); // 向ArrayList中添加球。
当按下按钮,添加多个球时,都保存在这个List中。
}
// 重写了 javax.swing.JComponent的 paintComponent()方法。
// paint()方法自动调用该方法。
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
for (int i = 0; i < balls.size(); i++) { // 循环
BallPress b = (BallPress) balls.get(i); // 从List中取出第i个球,
b.draw(g2); // 画此球。
}
}
}
/**
* 画出球。
*
* 在 canvas上画出,color色的小球图形。
*
* 属性,可用于携带画小球所需参数。
*
*
*
* @author ducongan
*
*/
class BallPress {
private Component canvas;
private Color color;
private int x = 0;
private int y = 0;
private int dx = 2;
private int dy = 2;
// 构造 初始化 容器 颜色 参数。
public BallPress(Component c, Color aColor) {
canvas = c;
color = aColor;
}
// 制定位置,画出小球。
public void draw(Graphics2D g2) {
g2.setColor(color);
g2.fill(new Ellipse2D.Double(x, y, 15, 15)); // ellipse:椭圆形
}
// 移动小球。
// 每次画时,先移动,再判断,再画。
// 该方法每次执行,画小球的起点坐标 (x,y), 每次各自+2, 即斜向右下运动。
public void move() {
x += dx; // x=x+dx; 画小球的起点坐标 (x,y), 每次各自+2, 即斜向右下运动。
y += dy; // y=y+dy;
if (x < 0) { // 小球已到左边框。
保证,从左边框开始画。
x = 0;
dx = -dx; // 小球横坐标变化值取反。
开始反向运动。
}
if (x + 15 >= canvas.getWidth()) { // 小球右边已经到画板右边。
x = canvas.getWidth() - 15;
dx = -dx; // 开始反向运动。
}
if (y < 0) { // 保证,从顶框开始画。
y = 0;
dy = -dy;
}
if (y + 15 >= canvas.getHeight()) { // 小球已到画板顶。
y = canvas.getHeight() - 15;
dy = -dy;
}
canvas.paint(canvas.getGraphics()); // 画出面板对象canvas----(及其上所有组件)
// //.paint()方法,自动调用
}
}
/*import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.util.*;
import javax.swing.*;
*//**
* 单线程,小球演示 搜索不到,run()方法/.start()
*//*
public class Bounce {
public static void main(String[] args) {
JFrame frame = new BounceFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // similar to
// window
// listener
frame.show();
}
}
不懂的再问啊。
。
。
RAKsmart 商家这几年还是在做事情的,虽然他们家顺带做的VPS主机并不是主营业务,毕竟当下的基础云服务器竞争过于激烈,他们家主营业务的独立服务器。包括在去年开始有新增多个数据中心独立服务器,包括有10G带宽的不限流量的独立服务器。当然,如果有需要便宜VPS主机的他们家也是有的,比如有最低月付1.99美元的美国VPS主机,而且可选安装Windows系统。这里商家有提供下面六款六月份的活动便宜V...
妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...
标题【萤光云双十二 全场6折 15元/月 续费同价】今天站长给大家推荐一家国内云厂商的双十二活动。萤光云总部位于福建福州,其成立于2002 年。主打高防云服务器产品,主要提供福州、北京、上海 BGP 和香港 CN2 节点。萤光云的高防云服务器自带 50G 防御,适合高防建站、游戏高防等业务。这家厂商本次双十二算是性价比很高了。全线产品6折,上海 BGP 云服务器折扣更大 5.5 折(测试了一下是金...
java源码为你推荐
xhtmlHTML4,HTML5,XHTML 之间有什么区别空间背景图片怎么设置空间背景图片图片修改工具推荐个好用的修改图片的工具招行信用卡还款招行信用卡怎么还款网络限速软件谁有网络限速的软件,路由器。很卡~别人一看电影什么都干不了。提供个限速的软件。下载成功给分!sg什么意思篮球中内线和外线是什么意思相册网知不知道怎么把一个人的照片放到网上去?相册网怎样才能把我的照片传到网上去??约束是什么意思爱不约束是什么意思申请信箱怎么申请邮箱啊
主机域名 vps推荐 国外vps主机 cybermonday 59.99美元 香港托管 国外bt 丹弗 商务主机 anylink 圣诞促销 工作站服务器 数据库空间 德隆中文网 百度云空间 贵阳电信 华为k3 江苏徐州移动 中国联通宽带测试 ssl加速 更多