java點名小程序
非常簡單的一個隨機抽獎小程序,不知是否合意.. 請ly
『貳』 java里如何實現一個小程序點一個按鈕數字加1,點另一個減1
為兩個按鈕都加上監聽器,中間的數字由lable.settext(""+數值加減),來改變,非常簡單,幾行代碼搞定。
『叄』 java編程 模擬簡單點名系統 急!!
這個裡面是我自己寫的一個滿足你需求的小程序和源碼
『肆』 JAVA編程(隨機點名程序),高手來!急!
代碼如下,需要建立兩個txt,一個為.txt,用來保存原有名單,另外一個為b.txt用來保存點名後的名單,在運行時可選,是否繼續上次點名還是開始新的點名, 程序完整,放入兩個txt文件後即可運行,請檢測
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Student {
List stuList = new ArrayList();
/**
* 點名
* @throws IOException
*/
public void calling() throws IOException{
while(true){
System.out.println("點名請按【Y】,退出請按【N】:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
if(input.toLowerCase().equals("y")){
int noNum = (int) (Math.random()*this.stuList.size());
String name = (String) this.stuList.get(noNum);
this.stuList.remove(noNum);
System.out.println("當前點名用戶為:"+name);
}else if(input.toLowerCase().equals("n")){
String s;
File f=new File("b.txt");
FileOutputStream fos =new FileOutputStream(f);
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(fos));
while (stuList.size() != 0) {
String name = (String)stuList.get(0);
System.out.println("存入name="+name);
bw.write(name);
bw.newLine();
stuList.remove(0);
}
bw.flush();
bw.close();
break;
}
}
}
/**
* 讀入學生信息
* @param fileName
* @return
* @throws Exception
*/
public void readStudent(String fileName) throws Exception {
Scanner sc = new Scanner(new File(fileName)).useDelimiter("\n");
int count = 0;
while(sc.hasNext()){
count++;
String name = sc.next();
System.out.println(count+"="+name);
this.stuList.add(new String(name));
}
}
/**
* 存入學生信息
* @param args
* @throws IOException
*/
public static void main(String[] args) throws Exception {
Student stu = new Student();
System.out.println("開始新的點名【1】,繼續上次點名【2】:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
String newFileName = "a.txt";
String oldFileName = "b.txt";
if(input.toLowerCase().equals("1")){
stu.readStudent(newFileName);
}else if(input.toLowerCase().equals("2")){
stu.readStudent(oldFileName);
}
stu.calling();
}
}
『伍』 求用java設計一個抽獎程序(或者老師課堂上點名的程序)
這個我幹不了。不過加入這個群,裡面也許會有人弄出來81987237
『陸』 用JAVA編寫一個小程序,不限類型好玩點的。
控制台小游戲 class YZDEL
{
public static void main(String[] args)
{
java.util.Random Shiji = new java.util.Random();
java.util.Scanner Shuru = new java.util.Scanner(System.in);
java.util.Scanner Nan = new java.util.Scanner(System.in);
int YingxHP = 20;
int YingxMP = 0;
int MogHP = 20;
int MogMP = 0;
int MogDo = 0;
int fangyu = 0;
System.out.println("┏━━━━╮┏━━┣┣┓╮┓┏━┳━┳┓┓━┓");
System.out.println("┏┣━━━┓┏━━┣┣┓┃┏┃┃┓┃╯");
System.out.println("┣┣━━━┫╭━━┻╯╮┃╰┓┃┃╯┏━┣━━┓");
System.out.println("┣┣━━━┫┏━━━━┓╭━━┣━┛┗━┻━┻┛┃┃");
System.out.println("┏┣━━━┓┣━━━━┫┃┃┃┗╮╮┃┃┣━╯");
System.out.println("┛┗╯┗━━━━╯┗╯╰╰━━┛┛┗━╯╰━┛");
System.out.println();
System.out.println(" 作者:天狐空幻");
System.out.println();
System.out.println("說明:勇者的操作方式為以下所示:");
System.out.println(" 使用攻擊需消耗1MP 傷害1HP");
System.out.println(" 使用蓄力可增加1MP 傷害0HP");
System.out.println(" 使用躲閃需消耗0MP 傷害0HP 躲避攻擊");
System.out.println(" 使用重擊需消耗3MP 傷害2HP 防禦無效");
System.out.println(" 惡龍攻擊力高, 注意防禦是取勝的關鍵");
System.out.println(" 惡龍MP達到4時可能會放出火焰無法躲避");
System.out.println(" 准備說明完畢,那麼讓我們來挑戰惡龍吧!");
System.out.println("==================================");
//難度選擇
System.out.println("請選擇難度");
System.out.println("1.娛樂 2.挑戰 3.噩夢");
int ND = Nan.nextInt();
System.out.println("==================================");
while(true)
{
//HP,MP的顯示
System.out.print("勇者: ");
System.out.print(" HP ");
for(int x=YingxHP;x>0;x--) System.out.print("*");
System.out.print(" "+YingxHP);
System.out.println();
System.out.print(" ");
System.out.print(" MP ");
for(int x=YingxMP;x>0;x--) System.out.print("*");
System.out.print(" "+YingxMP);
System.out.println();
System.out.print("惡龍: ");
System.out.print(" HP ");
for(int y=MogHP;y>0;y--) System.out.print("*");
System.out.print(" "+MogHP);
System.out.println();
System.out.print(" ");
System.out.print(" MP ");
for(int y=MogMP;y>0;y--) System.out.print("*");
System.out.print(" "+MogMP);
System.out.println();
System.out.println("==================================");
//勝利判定
if(YingxHP<1) {System.out.println();System.out.println("勇者HP為0! 不..不可能..我怎麼會..勇者倒下了。再接再厲吧!~");System.out.println();break;}
if(MogHP<1) {System.out.println();System.out.println("惡龍HP為0! 惡龍絕望的哀鳴中倒了下去。勇者勝利了。恭喜你挑戰成功!!");System.out.println();break;}
//角色輸入判定
System.out.println("你要做什麼:");
System.out.println("1.攻擊 2.蓄力");
System.out.println("3.躲閃 4.重擊");
System.out.println("____________________");
int Do = Shuru.nextInt();
//敵人輸入判定
//娛樂難度
if(ND==1){
for(int i=1;i<3;i++) MogDo = Shiji.nextInt(4);}
//挑戰難度
if(ND==2){
if(YingxMP==0&&MogMP==0) {MogDo = 0;}
else if(MogMP==0){for(int i=1;i<3;i++) MogDo = Shiji.nextInt(2);}
else if(YingxMP>2&&MogMP>2) MogDo = 2;
else if(MogMP<4) {for(int i=1;i<4;i++) MogDo = Shiji.nextInt(3);}
else MogDo = 3;}
//噩夢難度
if(ND==3){
if(Do==1) MogDo=1;
if(Do==2&&MogMP>0) MogDo=2;
if(Do==2&&MogMP==0) MogDo=0;
if(Do==3&&MogMP<4) MogDo=0;
if(Do==3&&MogMP>=4) MogDo=3;}//變態判定。。
//戰斗分析
//防禦
if(Do==3) {fangyu=1;System.out.println("你靈巧的躲避攻擊!");}
if(MogDo==1) {fangyu=1;System.out.println("惡龍進行防禦!");}
//角色判定
if(Do==1&&YingxMP==0) {System.out.println("MP不足!");}
if(Do==1&&YingxMP>0) {
if(fangyu==0) {MogHP=MogHP-1;YingxMP=YingxMP-1;System.out.println("你發動攻擊!");}
if(fangyu==1) {YingxMP=YingxMP-1;System.out.println("你的攻擊被格擋!");}}
if(Do==2) {YingxMP=YingxMP+1;System.out.println("你進行蓄力!");}
if(Do==4&&YingxMP<3) {System.out.println("MP不足!");}
if(Do==4&&YingxMP>2) {MogHP=MogHP-2;YingxMP=YingxMP-3;System.out.println("你發動重擊!");}
if(Do> 4) System.out.println("你不知所措...");
//敵人判定
if(MogDo==2&&MogMP==0) {System.out.println("惡龍在發呆!");}
if(MogDo==2&&MogMP>0) {
if(fangyu==0) {YingxHP=YingxHP-2;MogMP=MogMP-1;System.out.println("惡龍發動攻擊!");}
if(fangyu==1) {MogMP=MogMP-1;System.out.println("惡龍的攻擊被躲開了!");}}
if(MogDo==0) {MogMP=MogMP+1;System.out.println("惡龍進行蓄力!");}
if(MogDo==3&&MogMP<4) {System.out.println("惡龍在發呆!");}
if(MogDo==3&&MogMP>3) {YingxHP=YingxHP-4;MogMP=MogMP-4;System.out.println("惡龍發動火焰吐吸!躲避不能!");}
//結束
fangyu = 0;
MogDo = 0;
System.out.println("____________________");
System.out.println();
System.out.println("=================================="); }
}
}
『柒』 java點名程序,為什麼我寫的點名程序,點擊按鈕後不會更新名字
隨機函數那裡有問題了 ,修改如下
import java.awt.Button;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.*;
public class Window extends JFrame {
List<String> names = new ArrayList<String>();
Button but = new Button("隨即點名");
JTextField jtf = new JTextField(15);
JLabel jl = new JLabel("姓名為:");
public Window(){
.init();
this.addComponent();
this.addListener();
}
private void addListener() {
but.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
jtf.setText(names.get((int) (Math.random()*names.size())));
}
});
}
private void addComponent() {
JPanel p = new JPanel();
p.add(jl);
p.add(jtf);
p.add(but);
this.add(p);
}
private void init() {
this.setSize(400,400);
center(this);
this.setTitle("隨即點名器");
names.add("a");
names.add("b");
names.add("c");
names.add("d");
names.add("e");
}
public static void center(Window win) {
int width = win.getWidth();
int height = win.getHeight();
Toolkit tool = Toolkit.getDefaultToolkit();
int screenWidth = tool.getScreenSize().width;
int screenHeight = tool.getScreenSize().height;
win.setLocation((screenWidth - width) / 2, (screenHeight - height) / 2);
}
public static void main(String [] args){
JFrame jf = new Window();
jf.setVisible(true);
jf.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
『捌』 java點名程序,如何增加一個被點名的概率
importjava.util.HashMap;
importjava.util.Map;
importjava.util.Random;
publicclassTest{
//實現思路:給每個key設置一個權重,權重越大被取到的概率越大,
//然後根據權重生成一個連續的大的數據區間,權重越大佔用的區間長度越大,
//在這個連續的大區間中取隨機數,取到的數落在哪個區間就取出該區間
//對應的key,從而實現了根據權重控制key獲取的概率
publicstaticfinalMap<int[],String>INTERVAL=newHashMap<>();
publicstaticintlimit=0;
static{
//權重,表示被選中的機會大小
Map<String,Integer>WEIGHT=newHashMap<>();
WEIGHT.put("a",1);
WEIGHT.put("b",5);
WEIGHT.put("c",10);
WEIGHT.put("d",20);
for(Map.Entry<String,Integer>entry:WEIGHT.entrySet()){
Stringkey=entry.getKey();
intvalue=entry.getValue();
INTERVAL.put(newint[]{limit,limit+value},key);
limit+=value;
}
}
//隨機獲取一個key
(){
//獲取一個指定范圍內的隨機數
intran=newRandom().nextInt(limit);
for(Map.Entry<int[],String>entry:INTERVAL.entrySet()){
int[]key=entry.getKey();
Stringvalue=entry.getValue();
if(ran>=key[0]&&ran<key[1]){
returnvalue;
}
}
returnnull;
}
publicstaticvoidmain(String[]args){
//隨機取WEIGHT中的key,統計每個key被取到的次數
Map<String,Integer>count=newHashMap<>();
for(inti=0;i<1000000;i++){
Stringk=getRandomKey();
if(count.containsKey(k)){
count.put(k,count.get(k)+1);
}else{
count.put(k,1);
}
}
//執行結果可以看出每個key取到的次數和設置的權重所佔比例比較接近,
//取得次數越多比例越精確
for(Map.Entry<String,Integer>entry:count.entrySet()){
Stringkey=entry.getKey();
Integervalue=entry.getValue();
System.out.println(key+":"+value);
}
}
}
『玖』 有沒有點名軟體或者微信小程序
這類小程序,一般都需要導入學生的姓名、學號之類的信息,所以建議你還是找一家專業的小程序開發公司來幫你做一個比較好。
由於這種小程序做起來比較簡單,因此費用方面基本不會很貴的。
『拾』 尋一個比較有趣的JAVA小程序源代碼,本人初學JAVA,想根據一個例子自己也做出一個JAVA程序
一般小程序源代碼可以淘寶購買,選擇自己喜歡的,都是幾塊錢的。