本人新手 想写个“谁是卧底”游戏的小程序 刚写一点就出现各种错误,,目测不是文件流方面问题就是数据出现问题,,调试半天无果 。。现附上代码,,求大神指导,,
package com.example.findx;
import java.util.Random;
public class Word {
public String word;
public String xword;
public Word(WordsDbAdapter dbHelper){
// 获得词组总数
int num = dbHelper.getsize();
System.out.print("3");
// 通过产生随机数获取id
Random random = new Random();
long id = (long)random.nextInt(num);
System.out.print(id);
// 通过id获得词组
String words[] = dbHelper.get(id);
// 随机设置好人词与卧底词
int a = random.nextInt(3);
int x = a;
while (a==x)
x = random.nextInt(3);
word = words[a];
xword = words[x];
}
}
package com.example.findx;
import java.io.InputStream;
import java.util.ArrayList;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class WordsDbAdapter {
private static final String DATABASE_NAME= "words.db";
private static final int DAATABASE_VERSION = 1;
private static final String DATABASE_TABLE = "words";
private static final String CREATE = "create table words(_id integer primary key, aword text, bword text, cword text)";
private Context ctx = null;
private DbHelper dbHelper;
private SQLiteDatabase db;
public static InputStream is ;
public static final String AWORD = "aword";
public static final String BWORD = "bword";
public static final String CWORD = "cword";
public static final String ID = "_id";
public WordsDbAdapter(Context ctx,InputStream is){
this.ctx = ctx;
this.is = is;
}
public WordsDbAdapter open() throws SQLException{
dbHelper = new DbHelper(ctx);
db = dbHelper.getWritableDatabase();
return this;
}
public void close(){
dbHelper.close();
}
public int getsize(){
return db.query(DATABASE_TABLE, new String[]{ID}, null, null, null, null, null).getCount();
}
public void add(String aword,String bword,String cword){
ContentValues cv = new ContentValues();
cv.put(AWORD, aword);
cv.put(BWORD, bword);
cv.put(CWORD,cword);
db.insert(DATABASE_TABLE, null, cv);
}
public void delete(long id){
db.delete(DATABASE_TABLE, "_id ="+id, null);