バイナリサーチです
javaプログラムで、
プログラム中に10人分の番号、氏名、電話番号を書き、
二文探索を使って、番号or氏名から電話番号を検索する
というプログラムを作っています。
テキスト頼りに自分でやってきたのですが、
コンパレータなどの意味が分からず
どう使えばよいか分かりません
途中まではやってみたのですが、ここまでも合ってるか分かりません
二文探索の方法についてご教授願います
import java.util.Arrays*;
import java.util.Scanner*;
import java.util.Comparators*;
class search {
static class 10data {
private int number; //番号
private String name; //名前
private String phonenumber; //電話番号
public 10data(int number, String name, String phonenumber) {
this.number = number; this.name = name; this.phonenumber = phonenumber;
}
public String toString() {
return number + "" + name + "" + phonenumber;
}
public static void main(String[] args) {
Scanner stdln = new Scanner(System.in);
10data[] x = {
new P_Data(01,akai,9147965416),
new P_Data(02,akiyama,9274621646),
new P_Data(03,katayama,5695195617),
new P_Data(04,kato,8414817863),
new P_Data(05,sakamoto,9548614769),
new P_Data(06,sato,1819316141),
new P_Data(07,tanaka,3215468548),
new P_Data(08,tani,6456212314),
new P_Data(09,nakanishi,6865148642),
new P_Data(10,nakamura,3136467825),
};
System.out.print("誰の電話番号を検索?生徒番号or名前:");
お礼
非常に解りやすい説明ありがとうございます。 なるほど。言語によって上位と下位の取り扱いが違うのですね。 大変勉強になりました。 unsignedするために & 0xff し、下位を8bit左シフトした論理和で 無事、値を取得できました。 大変ありがとうございましたm(_ _)m