java有趣的
就你出的題來說,沒看懂,就java來說表示起始2,一直到N做循環
import java.util.Scanner;
public class FunNumber {
public static void main(String[] args) {
Scanner fin = new Scanner(System.in);
int N = fin.nextInt();
long i = (long)Math.pow(10, N-1);
long j = (long)Math.pow(10, N);
long count = 0;
for(;i<j;i++){
if(isFun(i,N)) {
count++;
System.out.println(i);
}
}
System.out.println("Count % 1000000007 = " + count%1000000007);
}
public static boolean isFun(long num,int N){
boolean[] num_exist = new boolean[4];
for(;N>0;N--){
int i = (int)(num%Math.pow(10,N)/Math.pow(10,N-1));
switch(i){
case 0:
num_exist[0] = true;
//0必須都在1前
if(num_exist[1]){
return false;
}
break;
case 1:
num_exist[1] = true;
break;
case 2:
num_exist[2] = true;
//2必須都在3前
if(num_exist[3]){
return false;
}
break;
case 3:
num_exist[3] = true;
break;
default:
//不只包含0123
return false;
}
}
//0123至少出現1次
if(num_exist[0]&&num_exist[1]&&num_exist[2]&&num_exist[3]){
return true;
}
return false;
}
}
B. 用java開發的大型游戲有哪些
Java開發的大型游戲有:俄羅斯方塊、超級泡泡龍、貪吃蛇、鑽石情迷、祖瑪等。學習Java開發推薦千鋒教育,教育培訓業務分為大學生技能培訓和職後技能培訓;高校服務業務主要提供校企合作全解決方案與定製服務;企業服務業務主要為企業提供專業化綜合服務,值得信賴。
用java開發的大型游戲有以下幾個:
1、俄羅斯方塊(Tetris)
經典的益智游戲,幾乎是世界上最有影響力的益智游戲之一,游戲本身也很簡單,只要不斷消減掉落的方塊就可以了。這個游戲被模仿了很多個版本,我這里的是EA出的瘋狂俄羅斯方塊(Tetris Mania)。
2、超級泡泡龍(Super Bubble Bobble)
Taito公司開發的游戲,主角是兩只綠色和藍色的小恐龍,通過吐出泡泡來消減屏幕上的綵球,游戲本身簡單易學、妙趣橫生,女孩子玩起來會上癮的。
3、貪吃蛇(Retro Snaker)
諾基亞手機上的一個元老級游戲,這個游戲短小精悍,很具可玩性,特別適合在手機上玩。據稱,已經有超過十億人玩過這個游戲。
4、鑽石情迷(Bejeweled)
一個很好玩的益智游戲,有點像「對對碰」,游戲規則很簡單,移動相鄰的兩個鑽石,使任一排產生有三個或以上的相同鑽石,即消去,上面的鑽石靠重力落下。
5、祖瑪(Zuma)
一款休閑益智游戲,玩法很像QQ龍珠,將中間吐出來的珠子向著周圍連環滾出的同色珠子射打,夠三個就能炸裂消除,簡單有趣。
想要了解更多有關Java開發的相關信息,推薦咨詢千鋒教育。千鋒教育總部位於北京,目前已在20個城市成立分公司,現有教研講師團隊300餘人。公司目前已與國內20000餘家IT相關企業建立人才輸送合作關系,每年培養泛IT人才近2萬人,十年間累計培養超10餘萬泛IT人才,累計向互聯網輸出免費教學視頻950餘套,累積播放量超9800萬余次,實力強大,值得選擇。
C. 用Java可以做哪些有趣的事情
像Instrial Light and Magic這樣的公司,就依賴Java來滿足各種編程需求。事實上,你經常可以在ILM上發現幾乎任何有開發需要的工作。在ILM工作有意思的地方在於,你可以把應用程序一起放到在大屏幕上查看結果。目前,ILM使用Java和Python來處理諸如測序動畫場景等任務。
D. 用Java可以做哪些有趣的事情
可以寫個公共號,用別人身份證注冊,用黑卡綁定,然後再國外使用假信息搞個vps,然後java就派上用場了,寫個爬蟲自動爬番號,爬引擎,爬種子,爬圖片,然後每天晚上11點左右(為什麼是這個時間,大家都懂的。)推送給大家,或者直接link到磁力p2p,然後就可以放心大膽的飆車了,再然後請大家趕緊排隊刷卡上車。
E. 有沒有關於JAVA的一些簡單又有趣的程序
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.Point;
import java.awt.Rectangle;
import javax.swing.ImageIcon;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Font;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.Date;
public class Game extends JFrame {
/**
* This method initializes jButton1
*
* @return javax.swing.JButton
*/
private JButton getJButton1() {
if (jButton1 == null) {
jButton1 = new JButton();
jButton1.setBounds(new Rectangle(478, 361, 164, 51));
jButton1.setText("重新開始");
jButton1.setVisible(false);
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
jButton1.setVisible(false);
jLabel.setVisible(false);
try {
Thread.sleep(1000);
} catch (InterruptedException e1) {
// TODO 自動生成 catch 塊
e1.printStackTrace();
}
reset();
}
});
}
return jButton1;
}
public static void main(String[] args) {
Game game = new Game();
game.start();
game.reset();
game.gogo();
}
public void reset() {
kup = false;
kdown = false;
kleft = false;
kright = false;
int chushihua = 0;
while (chushihua < zidanshu) {
((JButton) buttonal.get(chushihua)).setBounds(new Rectangle(-50,
-50, 10, 10));
chushihua++;
}
gamexunhuan = true;
jButton.setIcon(new ImageIcon(fileLoc));
jButton.setLocation(320, 320);
p = jButton.getLocation();
x=p.getX();
y=p.getY();
firsttime=new Date().getTime();
}
public void start() {
int chushihua = 0;
while (chushihua < zidanshu) {
JButton jb = new JButton();
jb.setBounds(new Rectangle(-50, -50, 10, 10));
jb.setEnabled(false);
Threads ths = new Threads(jb);
Thread th = new Thread(ths);
buttonal.add(jb);
threadal.add(th);
chushihua++;
}
Game.Move move = new Move();
Thread tm = new Thread(move);
tm.start();
}
public void gogo() {
int chushihua = 0;
while (chushihua < zidanshu) {
((Thread) threadal.get(chushihua)).start();
chushihua++;
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
}
// private static Game game;
private long firsttime;
private long lasttime;
private static final long serialVersionUID = 1L;
private JPanel jPanel = null;
private JButton jButton = null;
private boolean kup ;
private boolean kdown ;
private boolean kleft ;
private boolean kright ;
// 定義玩家的行走步伐,數值越大,移動速度越快 private int step = 3;
Point p; // @jve:decl-index=0:
double x = 0.0;
double y = 0.0;
// 定義了子彈的個數 int zidanshu = 70;
// 定義子彈初始值,這個是不變的
// int chushihua = 0;
// 定義控制子彈行走的循環false就不走了
private boolean gamexunhuan = true;
private JLabel jLabel = null;
private JButton jButton1 = null;
private ArrayList buttonal = new ArrayList();
private ArrayList threadal = new ArrayList();
URLClassLoader urlLoader = (URLClassLoader)this.getClass().getClassLoader();
URL fileLoc = urlLoader.findResource("MyGameIcons/gwl1.gif"); // @jve:decl-index=0:
URL fileLoc1 = urlLoader.findResource("MyGameIcons/gwls1.gif");
/**
* This is the default constructor
*/
public Game() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(700, 700);
this.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(1);
}
});
this.setResizable(false);
this.setContentPane(getJPanel());
this.setTitle("范傳奇的小游戲!(模擬撐過30秒的小DEMO)");
this.setVisible(true);
}
/**
* This method initializes jPanel
*
* @return javax.swing.JPanel
*/
private JPanel getJPanel() {
if (jPanel == null) {
jLabel = new JLabel();
jLabel.setBounds(new Rectangle(42, -33, 595, 308));
jLabel.setFont(new Font("Dialog", Font.BOLD, 24));
jLabel.setForeground(new Color(250, 2, 2));
jLabel.setEnabled(true);
jLabel.setVisible(false);
jPanel = new JPanel();
jPanel.setLayout(null);
jPanel.add(getJButton(), null);
jPanel.setForeground(new Color(1, 1, 1));
jPanel.setBackground(new Color(1, 1, 1));
jPanel.setVisible(true);
jPanel.add(jLabel, null);
jPanel.add(getJButton1(), null);
}
return jPanel;
}
/**
* This method initializes jButton
*
* @return javax.swing.JButton
*/
class Move implements Runnable {
public void run() {
while(true){
while (gamexunhuan) {
p = jButton.getLocation();
if (kup) {
if (kleft) {
x = p.getX();
y = p.getY();
if (x > 0 && y > 0) {
jButton.setLocation((int) x - step, (int) y
- step);
}
} else if (kright) {
x = p.getX();
y = p.getY();
if (x + 40 < 700 && y > 0) {
jButton.setLocation((int) x + step, (int) y
- step);
}
} else {
x = p.getX();
y = p.getY();
if (y > 0) {
jButton.setLocation((int) x, (int) y - step);
}
}
}
if (kdown) {
if (kleft) {
x = p.getX();
y = p.getY();
if (y + 60 < 700 && x > 0) {
jButton.setLocation((int) x - step, (int) y
+ step);
}
} else if (kright) {
x = p.getX();
y = p.getY();
if (x + 40 < 700 && y + 60 < 700) {
jButton.setLocation((int) x + step, (int) y
+ step);
}
} else {
x = p.getX();
y = p.getY();
if (y + 60 < 700) {
jButton.setLocation((int) x, (int) y + step);
}
}
}
if (kleft) {
if (kup) {
x = p.getX();
y = p.getY();
if (x > 0 && y > 0) {
jButton.setLocation((int) x - step, (int) y
- step);
}
} else if (kdown) {
x = p.getX();
y = p.getY();
if (y + 60 < 700 && x > 0) {
jButton.setLocation((int) x - step, (int) y
+ step);
}
} else {
x = p.getX();
y = p.getY();
if (x > 0) {
jButton.setLocation((int) x - step, (int) y);
}
}
}
if (kright) {
if (kup) {
x = p.getX();
y = p.getY();
if (x + 40 < 700 && y > 0) {
jButton.setLocation((int) x + step, (int) y
- step);
}
} else if (kdown) {
x = p.getX();
y = p.getY();
if (x + 40 < 700 && y + 60 < 700) {
jButton.setLocation((int) x + step, (int) y
+ step);
}
} else {
x = p.getX();
y = p.getY();
if (x + 40 < 700) {
jButton.setLocation((int) x + step, (int) y);
}
}
}
try {
Thread.sleep(10);
} catch (InterruptedException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
try {
Thread.sleep(50);
} catch (InterruptedException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
}
}
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButton.setBounds(new Rectangle(320, 320, 30, 30));
jButton.setBackground(new Color(1, 1, 1));
p = jButton.getLocation();
x = p.getX();
y = p.getY();
jButton.setIcon(new ImageIcon(fileLoc));
jButton.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(java.awt.event.KeyEvent e) {
if(e.getKeyCode()==10){
if(!gamexunhuan){
jButton1.setVisible(false);
jLabel.setVisible(false);
reset();
}
}
if (e.getKeyCode() == 37) {
kleft = false;
}
if (e.getKeyCode() == 38) {
kup = false;
}
if (e.getKeyCode() == 39) {
kright = false;
}
if (e.getKeyCode() == 40) {
kdown = false;
}
}
public void keyPressed(java.awt.event.KeyEvent e) {
if (e.getKeyCode() == 37) {
kleft = true;
}
if (e.getKeyCode() == 38) {
kup = true;
}
// 觸發按右鍵
if (e.getKeyCode() == 39) {
kright = true;
}
if (e.getKeyCode() == 40) {
kdown = true;
}
}
});
}
return jButton;
}
class Threads implements Runnable {
public Threads(JButton jjb) {
jb = jjb;
}
JButton jb = null;
private boolean first = true;
public void run() {
while (gamexunhuan) {
go();
}
}
public void go() {
int zzx = 0;
int zzy = 0;
int zx = 0;
int zy = 0;
while (true) {
if(gamexunhuan){
int fangxiang = (int) (Math.random() * 4 + 1);
// 四個if隨即從四個邊發射子彈
if (fangxiang == 1) {
zx = 0;
zy = (int) (Math.random() * 701);
}
if (fangxiang == 2) {
zx = (int) (Math.random() * 701);
zy = 0;
}
if (fangxiang == 3) {
zx = 700;
zy = (int) (Math.random() * 701);
}
if (fangxiang == 4) {
zx = (int) (Math.random() * 701);
zy = 700;
}
// 初始化子彈,有了就不在加了
if (first) {
jPanel.add(jb, null);
first = false;
}
jb.setBounds(new Rectangle(zx, zy, 10, 10));
// 定義子彈與物體之間的步長
zzx = (int) (((x + 15) - zx) / 30);
zzy = (int) (((y + 15) - zy) / 30);
}
while (gamexunhuan) {
try {
zx += zzx;
zy += zzy;
jb.setLocation(zx, zy);
if (zx + 5 > x & zx + 5 < x + 30 & zy + 5 > y
& zy + 5 < y + 30) {
jButton.setIcon(new ImageIcon(fileLoc1));
gamexunhuan = false;
first = true;
jButton1.setVisible(true);
jLabel.setVisible(true);
lasttime = new Date().getTime();
Date gametime = new Date(lasttime-firsttime);
int min =0;
int sec =0;
min = gametime.getMinutes();
sec = gametime.getSeconds();
String endtime = "";
if(min!=0){
endtime=min + "分 " + sec + "秒";
}else{
endtime=sec + "秒";
}
jLabel.setText(" GAME OVER!!! \n用時:" + endtime);
break;
}
// 超出邊線停止循環
if (zx > 700 | zy > 700 | zx < 0 | zy < 0) {
break;
}
Thread.sleep(60);
} catch (InterruptedException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
try {
Thread.sleep(50);
} catch (InterruptedException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
}
}
} // @jve:decl-index=0:visual-constraint="10,10"
這是一個以前寫過的「是男人就撐過30秒的小游戲源碼」
如果想要執行程序,麻煩留個郵箱。
F. 求一個簡單又有趣的JAVA小游戲代碼
具體如下:
連連看的小源碼
package Lianliankan;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class lianliankan implements ActionListener
{
JFrame mainFrame; //主面板
Container thisContainer;
JPanel centerPanel,southPanel,northPanel; //子面板
JButton diamondsButton[][] = new JButton[6][5];//游戲按鈕數組
JButton exitButton,resetButton,newlyButton; //退出,重列,重新開始按鈕
JLabel fractionLable=new JLabel("0"); //分數標簽
JButton firstButton,secondButton; //
分別記錄兩次被選中的按鈕
int grid[][] = new int[8][7];//儲存游戲按鈕位置
static boolean pressInformation=false; //判斷是否有按鈕被選中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戲按鈕的位置坐標
int i,j,k,n;//消除方法控制
代碼(code)是程序員用開發工具所支持的語言寫出來的源文件,是一組由字元、符號或信號碼元以離散形式表示信息的明確的規則體系。
對於字元和Unicode數據的位模式的定義,此模式代表特定字母、數字或符號(例如 0x20 代表一個空格,而 0x74 代表字元「t」)。一些數據類型每個字元使用一個位元組;每個位元組可以具有 256 個不同的位模式中的一個模式。
在計算機中,字元由不同的位模式(ON 或 OFF)表示。每個位元組有 8 位,這 8 位可以有 256 種不同的 ON 和 OFF 組合模式。對於使用 1 個位元組存儲每個字元的程序,通過給每個位模式指派字元可表示最多 256 個不同的字元。2 個位元組有 16 位,這 16 位可以有 65,536 種唯一的 ON 和 OFF 組合模式。使用 2 個位元組表示每個字元的程序可表示最多 65,536 個字元。
單位元組代碼頁是字元定義,這些字元映射到每個位元組可能有的 256 種位模式中的每一種。代碼頁定義大小寫字元、數字、符號以及 !、@、#、% 等特殊字元的位模式。每種歐洲語言(如德語和西班牙語)都有各自的單位元組代碼頁。
雖然用於表示 A 到 Z 拉丁字母表字元的位模式在所有的代碼頁中都相同,但用於表示重音字元(如"é"和"á")的位模式在不同的代碼頁中卻不同。如果在運行不同代碼頁的計算機間交換數據,必須將所有字元數據由發送計算機的代碼頁轉換為接收計算機的代碼頁。如果源數據中的擴展字元在接收計算機的代碼頁中未定義,那麼數據將丟失。
如果某個資料庫為來自許多不同國家的客戶端提供服務,則很難為該資料庫選擇這樣一種代碼頁,使其包括所有客戶端計算機所需的全部擴展字元。而且,在代碼頁間不停地轉換需要花費大量的處理時間。
G. 推薦幾個好玩的java游戲
深海魚鷹
故事發生在一個遙遠的行星上,那裡完全被水體覆蓋,生物都是類似潛水艇的東西。你在海軍服役,要進行一系列任務,從探索資源到軍事行動。叛軍、海島以及神秘種族的多方交戰讓你身處險境。
浴火銀河3D
把玩家帶入了未來40世紀的一個充滿了斗爭與沖突的太陽系。在兇殘的Vossk帝國的帶領下,人類已經移民到銀河系的每個角落,並發現了其他星系的外星人。其中一些外星人和Vossk帝國的艦隊結盟了。
在這場壯麗的戰斗中,你可以挑選20種不同的宇宙飛船,G.O.F技術使3D畫面處理起來更快;游戲中也融合了太陽系之間的交易元素。你可以在500個星球和空間站之間進行一段漫長而又有趣的旅程。
風雲指揮官3D
一款3D多玩家飛行射擊游戲,講述了一個震撼人心的發生在朵朵白雲中間的空戰以及深深峽谷中的快速追逐射擊。玩家的任務是搜尋和摧毀敵對目標,或者護送己方機隊通過地方領空。在多玩家模式下,可以在峽谷飛行關口挑戰其他玩家,得到最好的排名。
武裝空襲
這是個街機式的射擊游戲,擁有武器加強、防護盾和修護等先進的空戰特點,在橫跨三大場景(森林、沙漠、島嶼)的21個任務中,玩家得消滅各種空中和陸地的敵人,並且解救戰俘。每個關卡都有一大幫的敵人等著您,而每個場景最終都有個大王阻攔您的去路!
一路狂飈3D
它基於當今最先進的java 3D游戲引擎ABYSS,所以3D效果堪稱完美。無論是賽車還是街道,讓人有身臨其境之感。游戲提供了四輛外型和性能都不同的汽車,並允許任意的變換賽車的顏色。游戲具有情節,並不是單純的賽車,除了和對手競速外,還需要按時完成一些任務,大多是在限定的時間開車到城市的某處取物品。你還可以在自由任務中自由自在的在夜晚的城市中開車而無需受到任何限制,不過最好還是避開警車。
機器人聯盟3D
是世界上第一款通過移動網路聯機的多人3D射擊游戲。它將大批的手機玩家引入到永不停息的戰斗當中。游戲擁有變化多樣的場景,栩栩如生的3D人物,多人游戲模式,將快速動作游戲同在線游戲融為一體。
極速精靈3D
一款富挑戰性的3D多人賽車游戲。你要有高超的車技才能在比賽中獲得較高的名次。在扭轉的沿海賽道上飛馳,欣賞法國海濱的入畫風景。真實的物理引擎和傑出的3D畫面將帶給你非常的賽車體驗!驚險賽道,立體感的畫面,手感強,快來挑戰速度的***。
3D虛擬拉力賽
提供令人眩目的3D圖像效果,在3個不同的危險地區有12條不同的路面。通過你的努力在冠軍模式中獲得冠軍,來解鎖隱藏的賽車和賽道。在多人對戰模式中,和你的對手挑戰駕駛技巧,然後在比賽找到取得V-Rally 3D賽車冠軍的快樂
Powerboat Challenge
游戲大小: 781 KB 游戲類別: 賽車競速 游戲界面: 國外軟體 英文 運行平台: 204*320版本 瀏覽次數: 更新時間: 2008-03-26 游戲簡介:一款期待已久的240X320賽艇游戲!
Rally Master Pro
競速類游戲一直是游戲品種中最受歡迎的一類游戲,在這一類產品中,各個廠商為了吸引廣大用戶紛紛投入不少精力進行研發,競速類游戲也是我們一直關注的重點品種,日前由Fishlabs出品的一款Rally Master Pro賽車游戲開始浮出水面,已經有不少國外媒體將其推薦為08年度不可不玩的手機游戲,我們也搞到了這款游戲的展示版,大家可以搶先體驗下手機上速度與激情的感覺,不過遺憾的是這款游戲對機器性能要求頗高。
魔法利刃
輸入58060可以成為完整版。世界上首款3D的MMORPG手機游戲,在龐大的奇幻世界裡面,玩家可以選擇自己喜歡的角色,去和如獸人和精靈等各種NPC對戰,甚至還可以和來自全世界的玩家對戰。當玩家穿越大陸去為自己的前路奮戰的時候,經驗和金錢可以為玩家帶來豐富的技能和武器。
H. 一個有趣的Java問題
我用的是擴展思想
以4為例
(1)n=1時,子集是{{1},{2},{3},{4}}
(2)n=2時,在n=1的基礎上增加,取n=1每個子集中的最大數max,如果還有數 比這個max大,說明這個子集可以擴展
{1}改為 {1,2},{1,3},{1,4}(max=1)
{2}改為 {2,3},{2,4} (max=2)
{3}改為 {3,4} (max=3)
{4}由於沒有數比max大,所以刪除{4} (max=4)
這樣得到的結果是{{1,2},{1,3},{1,4},{2,3},{2,4},{3,4}}
(3)n=3時,在n=2的基礎上增加,取n=2每個子集的最大數
{1,2}改為{1,2,3},{1,2,4} (max=2)
{1,3}改為{1,3,4} (max=3)
{1,4}刪除 (max=4)
{2,3}改為{2,3,4} (max=3)
{2,4}刪除 (max=4)
{3,4}刪除 (max=4)
這樣得到的結果是{{1,2,3},{1,2,4},{1,3,4},{2,3,4}}
(4)n=4時,在n=3的基礎上修改,很明顯,只有{1,2,3}能擴展
所以n=4時的子集是{{1,2,3,4}}
我的設計思想就是這樣
下面是原代碼
import java.util.Vector;
public class SubSet{
public static void main(String[] args){
int baseNumber=5;
Vector<Vector> all=new Vector<Vector>();
StringBuffer sb=new StringBuffer();
for(int i=1;i<=baseNumber;i++){//外層循環控制子集組合的個數
Vector inner=new Vector();
sb.append(i);
if(i<baseNumber)
sb.append(",");
inner.add(i);
if(i<baseNumber)
all.add(inner);
}
System.out.println(sb.toString());
System.out.println("size="+baseNumber);
for(int i=2;i<=baseNumber;i++){//控制基數
int size=all.size();
for(int j=0;j<size;j++){
Vector temp=(Vector)all.get(j);
int last=(Integer)temp.lastElement();
for(int k=last+1;k<=baseNumber;k++){
Vector added=new Vector(temp);
added.add(k);
all.add(added);
}
}
// System.out.println(all);
/// System.out.println(size);
// printVectorVector(all);
for(int n=0;n<size;n++){
all.remove(0);
}
//System.out.println(all);
printVectorVector(all);
System.out.println("size="+all.size());
}
//主循環結束
}
//main() End
static void printVector(Vector v){
StringBuffer sb=new StringBuffer();
for(int i=0;i<v.size();i++){
sb.append(v.get(i));
}
System.out.print(sb.toString());
}
//列印嵌套的Vector
static void printVectorVector(Vector<Vector> vv){
for(int i=0;i<vv.size();i++){
printVector(vv.get(i));
if(i!=vv.size()-1)
System.out.print(",");
}
System.out.println();
}
}