亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

用RMS存儲游戲積分

2019-11-18 16:05:43
字體:
來源:轉載
供稿:網友
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.EOFException;
import java.io.IOException;

import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.rms.RecordComparator;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordFilter;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreException;

/**
 * A class used for storing and showing game scores.
 */
public class RMSGameScores extends MIDlet implements RecordFilter,
    RecordComparator {
  /*
   * The RecordStore used for storing the game scores.
   */
  PRivate RecordStore recordStore = null;

  /*
   * The player name to use when filtering.
   */
  public static String playerNameFilter = null;

  /**
   * The constUCtor opens the underlying record store, creating it if
   * necessary.
   */
  public RMSGameScores() {
    // Create a new record store for this example
    try {
      recordStore = RecordStore.openRecordStore("scores", true);
    } catch (RecordStoreException rse) {
      System.out.println("Record Store Exception in the ctor." + rse);
      rse.printStackTrace();
    }
  }

  /**
   * startApp()
   */
  public void startApp() throws MIDletStateChangeException {
    RMSGameScores rmsgs = new RMSGameScores();
    rmsgs.addScore(100, "Alice");
    rmsgs.addScore(120, "Bill");
    rmsgs.addScore(80, "Candice");
    rmsgs.addScore(40, "Dean");
    rmsgs.addScore(200, "Ethel");
    rmsgs.addScore(110, "Farnsworth");
    rmsgs.addScore(220, "Alice");
    RMSGameScores.playerNameFilter = "Alice";
    System.out
        .println("Print all scores followed by Scores for Farnsworth");
    rmsgs.printScores();
  }

  /*
   * Part of the RecordFilter interface.
   */
  public boolean matches(byte[] candidate) throws IllegalArgumentException {
    // If no filter set, nothing can match it.
    if (this.playerNameFilter == null) {
      return false;
    }

    ByteArrayInputStream bais = new ByteArrayInputStream(candidate);
    DataInputStream inputStream = new DataInputStream(bais);
    String name = null;

    try {
      int score = inputStream.readInt();
      name = inputStream.readUTF();
    } catch (EOFException eofe) {   System.out.println(eofe);
      eofe.printStackTrace();
    } catch (IOException eofe) {
      System.out.println(eofe);
      eofe.printStackTrace();
    }
    return (this.playerNameFilter.equals(name));
  }

  /*
   * Part of the RecordComparator interface.
   */
  public int compare(byte[] rec1, byte[] rec2) {

    // Construct DataInputStreams for extracting the scores from
    // the records.
    ByteArrayInputStream bais1 = new ByteArrayInputStream(rec1);
    DataInputStream inputStream1 = new DataInputStream(bais1);
    ByteArrayInputStream bais2 = new ByteArrayInputStream(rec2);
    DataInputStream inputStream2 = new DataInputStream(bais2);
    int score1 = 0;
    int score2 = 0;
    try {
      // Extract the scores.
      score1 = inputStream1.readInt();
      score2 = inputStream2.readInt();
    } catch (EOFException eofe) {
      System.out.println(eofe);
      eofe.printStackTrace();
    } catch (IOException eofe) {
      System.out.println(eofe);
      eofe.printStackTrace();
    }

    // Sort by score
    if (score1 > score2) {
      return RecordComparator.FOLLOWS;
    } else if (score1 < score2) {
      return RecordComparator.PRECEDES;
    } else {
      return RecordComparator.EQUIVALENT;
    }
  }

  /**
   * Add a new score to the storage.
   * 
   * @param score
   *            the score to store.
   * @param playerName
   *            the name of the play achieving this score.
   */
  public void addScore(int score, String playerName) {
    // Each score is stored in a separate record, formatted with
    // the score, followed by the player name.
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    DataOutputStream outputStream = new DataOutputStream(baos);
    try {
      // Push the score into a byte array.
      outputStream.writeInt(score);
      // Then push the player name.
      outputStream.writeUTF(playerName);
    } catch (IOException ioe) {
      System.out.println(ioe);
      ioe.printStackTrace();
    }

    // Extract the byte array
    byte[] b = baos.toByteArray();
    try {
      // Add it to the record store
      recordStore.addRecord(b, 0, b.length);
    } catch (RecordStoreException rse) {
      System.out.println(rse);
      rse.printStackTrace();
    }
  }

  /**
   * A helper method for the printScores methods.
   */
  private void printScoresHelper(RecordEnumeration re) {

    try {
      while (re.hasNextElement()) {
        int id = re.nextRecordId();
        ByteArrayInputStream bais = new ByteArrayInputStream(
            recordStore.getRecord(id));
        DataInputStream inputStream = new DataInputStream(bais);
        try {
          int score = inputStream.readInt();
          String playerName = inputStream.readUTF();
          System.out.println(playerName + " = " + score);
        } catch (EOFException eofe) {
          System.out.println(eofe);
          eofe.printStackTrace();
        }
      }
    } catch (RecordStoreException rse) {
      System.out.println(rse);
      rse.printStackTrace();
    } catch (IOException ioe) {
      System.out.println(ioe);
      ioe.printStackTrace();
    }
  }

  /**
   * This method prints all of the scores sorted by game score.
   */
  public void printScores() {
    try {
      // Enumerate the records using the comparator implemented
      // above to sort by game score.

      // No RecordFilter here. All records in the RecordStore
      RecordEnumeration re = recordStore.enumerateRecords(null, this,
          true);

      // Print all scores
      System.out.println("Print all scores...");
      printScoresHelper(re);

      // Enumerate records respecting a RecordFilter
      re = recordStore.enumerateRecords(this, this, true);

      //Print scores for Farnsworth
      System.out.println("Print scores for : " + this.playerNameFilter);
      printScoresHelper(re);
    } catch (RecordStoreException rse) {
      System.out.println(rse);
      rse.printStackTrace();
    }}

  /**
   * pauseApp()
   */
  public void pauseApp() {
    System.out.println("pauseApp()");
  }

  /**
   * destroyApp()
   * 
   * This closes our open RecordStore when we are destroyed.
   * 
   * @param cond
   *            true if this is an unconditional destroy false if it is not
   *            (ignored here and treated as unconditional)
   */
  public void destroyApp(boolean cond) {
    System.out.println("destroyApp( )");
    try {
      if (recordStore != null)
        recordStore.closeRecordStore();
    } catch (Exception ignore) {
      // ignore this
    }
  }

}

(出處:http://www.49028c.com)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲人成电影在线观看天堂色| 国自在线精品视频| 国产自摸综合网| 久久深夜福利免费观看| 日本高清不卡的在线| 欧美激情在线狂野欧美精品| 久久亚洲精品中文字幕冲田杏梨| 亚洲电影中文字幕| 日韩有码在线观看| 欧美性jizz18性欧美| 成人福利免费观看| 久久精品视频99| 成人h片在线播放免费网站| 日本国产欧美一区二区三区| 国产精彩精品视频| 亚洲丝袜av一区| 91情侣偷在线精品国产| 亚洲91精品在线| 中文字幕久久精品| 精品少妇一区二区30p| 亚洲色图色老头| 亚洲性av在线| 日韩电影中文字幕在线观看| 日韩欧美亚洲一二三区| 亚洲欧洲av一区二区| 亚洲无限乱码一二三四麻| 国产成人福利夜色影视| 日韩av在线天堂网| 亚洲石原莉奈一区二区在线观看| 亚洲欧美国产va在线影院| 欧美国产日韩一区二区三区| 国内外成人免费激情在线视频网站| 亚洲国产成人精品电影| 成人xxxx视频| 色偷偷9999www| 午夜精品福利电影| 中文字幕免费精品一区高清| 欧美激情精品久久久久久免费印度| 欧美成人自拍视频| 国产日韩欧美自拍| 欧美精品18videosex性欧美| 成人免费直播live| 国产精品一区二区久久| 亚洲国产精品热久久| 欧美视频在线免费| 亚洲成av人片在线观看香蕉| 亚洲精品美女在线| 久久精品91久久香蕉加勒比| 一区二区三区视频免费| 久久精品中文字幕一区| 一本色道久久88综合日韩精品| 精品国产一区二区在线| 国产精品露脸av在线| 98精品国产自产在线观看| 亚洲免费中文字幕| 国产区精品在线观看| 黑人巨大精品欧美一区二区免费| 欧美激情在线播放| 日本成人精品在线| 国产精品流白浆视频| 欧美大片va欧美在线播放| 91精品国产色综合久久不卡98| 久久夜色精品亚洲噜噜国产mv| 亚洲男人的天堂网站| 国产精品扒开腿做爽爽爽男男| 精品高清美女精品国产区| 国产伦精品免费视频| 亚洲黄页网在线观看| 亚洲综合色av| 欧美亚洲一级片| 国产精品美腿一区在线看| 亚洲成人a**站| 日韩经典中文字幕在线观看| 久久久久久久国产精品视频| 日韩国产激情在线| 97精品一区二区三区| 日本精品性网站在线观看| 亚洲激情视频网站| 亚洲精品456在线播放狼人| 午夜精品蜜臀一区二区三区免费| 久久香蕉精品香蕉| 久久久久久久久久久久久久久久久久av| 精品国产一区二区三区久久| 久久精品成人一区二区三区| 国产成人综合一区二区三区| 国产精品美女视频网站| 日韩高清av在线| 中文字幕亚洲情99在线| 亚洲精品网站在线播放gif| 97婷婷涩涩精品一区| 日韩国产在线播放| 亚洲一区二区三区四区视频| 国产日韩亚洲欧美| 91麻豆国产语对白在线观看| 成人免费黄色网| 国产成人91久久精品| 美女少妇精品视频| 国产一区玩具在线观看| 最新国产精品亚洲| 欧美日韩国产一区二区| 5278欧美一区二区三区| 色伦专区97中文字幕| 日韩在线观看成人| 欧美大尺度激情区在线播放| 亚洲天堂免费观看| 国产成人福利夜色影视| 国产日韩换脸av一区在线观看| 亚洲最新av在线| 久久99精品国产99久久6尤物| 欧美成人精品激情在线观看| 91理论片午午论夜理片久久| 成人福利网站在线观看| 亚洲精品影视在线观看| 97久久精品在线| 国内精品伊人久久| 亚洲精品白浆高清久久久久久| 清纯唯美亚洲综合| 亚洲第一天堂无码专区| 久久国内精品一国内精品| 亚洲久久久久久久久久| 成人97在线观看视频| 日韩在线观看免费全| 亚洲国内精品在线| 欧美性猛交xxxx黑人猛交| 久久躁日日躁aaaaxxxx| 亚洲精品欧美一区二区三区| 2019最新中文字幕| 日韩中文字幕精品视频| 日产精品99久久久久久| 欧美精品在线观看91| 国产成人一区二区三区| 国产精品久久久久影院日本| 亚洲国产高清自拍| 亚洲国产日韩欧美在线99| 国产一区二区三区视频在线观看| 欧美夫妻性视频| 91亚洲精品久久久久久久久久久久| 国产精品美女在线| 国产一区二区三区直播精品电影| 中文字幕欧美日韩精品| 国产精品美女午夜av| 中文国产亚洲喷潮| 日韩美女在线观看一区| 国产专区欧美专区| 亚洲男人天天操| 成人免费视频xnxx.com| 成人写真福利网| 亚洲欧美色图片| 日韩免费在线播放| 亚洲曰本av电影| 4k岛国日韩精品**专区| 日韩精品中文在线观看| 中文字幕亚洲自拍| 欧美激情欧美激情| 81精品国产乱码久久久久久| 国产精品视频在线观看| 亚洲精品久久久久久久久久久| 久久亚洲私人国产精品va| 亚洲成人a级网| 亚洲综合大片69999| 日韩在线视频网| 欧美亚洲国产另类| 国产精品吴梦梦| 亚洲欧美日韩中文在线制服|